LoaderControl.xaml 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
  1. <UserControl x:Class="CyberX8_Themes.UserControls.LoaderControl"
  2. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  3. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  4. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  5. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  6. xmlns:local="clr-namespace:CyberX8_Themes.UserControls"
  7. xmlns:converters="clr-namespace:CyberX8_Themes.Converters"
  8. mc:Ignorable="d" Name="loader"
  9. d:DesignHeight="310" d:DesignWidth="200">
  10. <UserControl.Resources>
  11. <converters:BoolToVisibility x:Key="boolToVisibility"/>
  12. <converters:BoolToVisibility3 x:Key="boolToVisibility3"/>
  13. </UserControl.Resources>
  14. <VisualStateManager.VisualStateGroups>
  15. <VisualStateGroup>
  16. <VisualState Name="TrnpA">
  17. <Storyboard FillBehavior="HoldEnd">
  18. <DoubleAnimationUsingKeyFrames Storyboard.TargetName="rotationAction" Storyboard.TargetProperty="Angle">
  19. <LinearDoubleKeyFrame Value="-90" KeyTime="0:0:1"/>
  20. </DoubleAnimationUsingKeyFrames>
  21. </Storyboard>
  22. </VisualState>
  23. <VisualState Name="TrnpB">
  24. <Storyboard FillBehavior="HoldEnd">
  25. <DoubleAnimationUsingKeyFrames Storyboard.TargetName="rotationAction" Storyboard.TargetProperty="Angle">
  26. <SplineDoubleKeyFrame Value="90" KeyTime="0:0:1"/>
  27. </DoubleAnimationUsingKeyFrames>
  28. </Storyboard>
  29. </VisualState>
  30. <VisualState Name="Load">
  31. <Storyboard FillBehavior="HoldEnd">
  32. <DoubleAnimationUsingKeyFrames Storyboard.TargetName="rotationAction" Storyboard.TargetProperty="Angle">
  33. <SplineDoubleKeyFrame Value="0" KeyTime="0:0:1"/>
  34. </DoubleAnimationUsingKeyFrames>
  35. </Storyboard>
  36. </VisualState>
  37. <VisualState Name="Camera">
  38. <Storyboard FillBehavior="HoldEnd">
  39. <DoubleAnimationUsingKeyFrames Storyboard.TargetName="rotationAction" Storyboard.TargetProperty="Angle">
  40. <SplineDoubleKeyFrame Value="63" KeyTime="0:0:1"/>
  41. </DoubleAnimationUsingKeyFrames>
  42. </Storyboard>
  43. </VisualState>
  44. </VisualStateGroup>
  45. </VisualStateManager.VisualStateGroups>
  46. <Viewbox Stretch="Fill">
  47. <Canvas Width="200" Height="310">
  48. <Canvas.RenderTransform>
  49. <TransformGroup>
  50. <RotateTransform x:Name="rotationAction" CenterX="100" CenterY="155"/>
  51. </TransformGroup>
  52. </Canvas.RenderTransform>
  53. <Rectangle Canvas.Top="100" Width="200" Height="30" Stroke="LightGray" Visibility="{Binding ElementName=loader, Path=WaferVisibleA,Converter={StaticResource boolToVisibility}}">
  54. <Rectangle.Fill>
  55. <LinearGradientBrush StartPoint="0,0" EndPoint="1,1">
  56. <GradientStop Color="DarkGray" Offset="0.0" />
  57. <GradientStop Color="Black" Offset="0.5" />
  58. <GradientStop Color="DarkGray" Offset="1" />
  59. </LinearGradientBrush>
  60. </Rectangle.Fill>
  61. </Rectangle>
  62. <Rectangle Canvas.Top="130" Width="200" Height="50" Stroke="LightGray">
  63. <Rectangle.Fill>
  64. <LinearGradientBrush StartPoint="0,0" EndPoint="1,1">
  65. <GradientStop Color="Silver" Offset="0.0" />
  66. <GradientStop Color="White" Offset="0.5" />
  67. <GradientStop Color="Silver" Offset="1" />
  68. </LinearGradientBrush>
  69. </Rectangle.Fill>
  70. </Rectangle>
  71. <Rectangle Canvas.Top="180" Width="200" Height="30" Stroke="LightGray" Visibility="{Binding ElementName=loader, Path=WaferVisibleB,Converter={StaticResource boolToVisibility}}">
  72. <Rectangle.Fill>
  73. <LinearGradientBrush StartPoint="0,0" EndPoint="1,1">
  74. <GradientStop Color="DarkGray" Offset="0.0" />
  75. <GradientStop Color="Black" Offset="0.5" />
  76. <GradientStop Color="DarkGray" Offset="1" />
  77. </LinearGradientBrush>
  78. </Rectangle.Fill>
  79. </Rectangle>
  80. <StackPanel Canvas.Top="143" Panel.ZIndex="99">
  81. <TextBlock FontSize="20" Text="Loader" TextAlignment="Center" Width="200"/>
  82. </StackPanel>
  83. <TextBlock Text="SideA" FontSize="17" Foreground="White" Canvas.Left="77" Canvas.Top="104" HorizontalAlignment="Left" Visibility="{Binding ElementName=loader, Path=WaferVisibleA,Converter={StaticResource boolToVisibility}}"/>
  84. <TextBlock Text="SideB" FontSize="17" Foreground="White" Canvas.Left="77" Canvas.Top="184" HorizontalAlignment="Left" Visibility="{Binding ElementName=loader, Path=WaferVisibleB,Converter={StaticResource boolToVisibility}}"/>
  85. <!--wafer-->
  86. <Viewbox Stretch="Uniform" Width="200" Height="200" Canvas.Top="-50" Canvas.Left="0" Visibility="{Binding ElementName=loader, Path=WaferVisibleA,Converter={StaticResource boolToVisibility3}}">
  87. <Canvas UseLayoutRounding="False" Width="93.693" Height="112.5" HorizontalAlignment="Left" VerticalAlignment="Top">
  88. <Canvas Width="72.522" Height="72.521" Canvas.Left="10.473" Canvas.Top="28.781">
  89. <Path Data="F1M10.473,65.041C10.473,85.068,26.708,101.302,46.734,101.302L46.734,101.302C66.761,101.302,82.995,85.068,82.995,65.041L82.995,65.041C82.995,45.015,66.761,28.781,46.734,28.781L46.734,28.781C26.708,28.781,10.473,45.015,10.473,65.041" Stretch="Fill" Width="72.522" Height="72.521" Canvas.Left="0" Canvas.Top="0">
  90. <Path.Fill>
  91. <RadialGradientBrush Center="0.5,0.5" RadiusX="0.5" RadiusY="0.5" GradientOrigin="0.5,0.5">
  92. <RadialGradientBrush.GradientStops>
  93. <GradientStop Color="#FFE5E2DF" Offset="0" />
  94. <GradientStop Color="#FFFFFFFF" Offset="0" />
  95. <GradientStop Color="#FFADAEB0" Offset="0.52" />
  96. <GradientStop Color="sc#1, 0.238698155, 0.250727534, 0.259264916" Offset="0.82" />
  97. <GradientStop Color="#FF454F52" Offset="1" />
  98. </RadialGradientBrush.GradientStops>
  99. </RadialGradientBrush>
  100. </Path.Fill>
  101. </Path>
  102. <Path Data="M46.8477,55.6938C52.0087,55.6938 56.1937,59.8788 56.1937,65.0398 56.1937,70.2008 52.0087,74.3858 46.8477,74.3858 41.6857,74.3858 37.5007,70.2008 37.5007,65.0398 37.5007,59.8788 41.6857,55.6938 46.8477,55.6938z" Stretch="Fill" Stroke="White" StrokeThickness="0.25" Width="18.943" Height="18.942" Canvas.Left="26.903" Canvas.Top="26.788" />
  103. </Canvas>
  104. <Canvas Tag="#00000000,#FF008000,Original,0,None" Width="56.555" Height="56.556" Canvas.Left="18.57" Canvas.Top="36.762">
  105. <Path Data="M46.8477,46.3472C57.1717,46.3472 65.5407,54.7172 65.5407,65.0412 65.5407,75.3652 57.1717,83.7342 46.8477,83.7342 36.5227,83.7342 28.1537,75.3652 28.1537,65.0412 28.1537,54.7172 36.5227,46.3472 46.8477,46.3472z" Stretch="Fill" Stroke="White" StrokeThickness="0.25" Width="37.637" Height="37.637" Canvas.Left="9.459" Canvas.Top="9.46" />
  106. <Path Data="M46.8477,36.8872C62.3957,36.8872 74.9997,49.4912 74.9997,65.0402 74.9997,80.5882 62.3957,93.1932 46.8477,93.1932 31.2987,93.1932 18.6947,80.5882 18.6947,65.0402 18.6947,49.4912 31.2987,36.8872 46.8477,36.8872z" Stretch="Fill" Stroke="White" StrokeThickness="0.25" Width="56.555" Height="56.556" />
  107. </Canvas>
  108. </Canvas>
  109. </Viewbox>
  110. <Viewbox Stretch="Uniform" Width="200" Height="200" Canvas.Top="130" Canvas.Left="0" Visibility="{Binding ElementName=loader, Path=WaferVisibleB,Converter={StaticResource boolToVisibility3}}">
  111. <Canvas UseLayoutRounding="False" Width="93.693" Height="112.5" HorizontalAlignment="Left" VerticalAlignment="Top">
  112. <Canvas Width="72.522" Height="72.521" Canvas.Left="10.473" Canvas.Top="28.781">
  113. <Path Data="F1M10.473,65.041C10.473,85.068,26.708,101.302,46.734,101.302L46.734,101.302C66.761,101.302,82.995,85.068,82.995,65.041L82.995,65.041C82.995,45.015,66.761,28.781,46.734,28.781L46.734,28.781C26.708,28.781,10.473,45.015,10.473,65.041" Stretch="Fill" Width="72.522" Height="72.521" Canvas.Left="0" Canvas.Top="0">
  114. <Path.Fill>
  115. <RadialGradientBrush Center="0.5,0.5" RadiusX="0.5" RadiusY="0.5" GradientOrigin="0.5,0.5">
  116. <RadialGradientBrush.GradientStops>
  117. <GradientStop Color="#FFE5E2DF" Offset="0" />
  118. <GradientStop Color="#FFFFFFFF" Offset="0" />
  119. <GradientStop Color="#FFADAEB0" Offset="0.52" />
  120. <GradientStop Color="sc#1, 0.238698155, 0.250727534, 0.259264916" Offset="0.82" />
  121. <GradientStop Color="#FF454F52" Offset="1" />
  122. </RadialGradientBrush.GradientStops>
  123. </RadialGradientBrush>
  124. </Path.Fill>
  125. </Path>
  126. <Path Data="M46.8477,55.6938C52.0087,55.6938 56.1937,59.8788 56.1937,65.0398 56.1937,70.2008 52.0087,74.3858 46.8477,74.3858 41.6857,74.3858 37.5007,70.2008 37.5007,65.0398 37.5007,59.8788 41.6857,55.6938 46.8477,55.6938z" Stretch="Fill" Stroke="White" StrokeThickness="0.25" Width="18.943" Height="18.942" Canvas.Left="26.903" Canvas.Top="26.788" />
  127. </Canvas>
  128. <Canvas Tag="#00000000,#FF008000,Original,0,None" Width="56.555" Height="56.556" Canvas.Left="18.57" Canvas.Top="36.762">
  129. <Path Data="M46.8477,46.3472C57.1717,46.3472 65.5407,54.7172 65.5407,65.0412 65.5407,75.3652 57.1717,83.7342 46.8477,83.7342 36.5227,83.7342 28.1537,75.3652 28.1537,65.0412 28.1537,54.7172 36.5227,46.3472 46.8477,46.3472z" Stretch="Fill" Stroke="White" StrokeThickness="0.25" Width="37.637" Height="37.637" Canvas.Left="9.459" Canvas.Top="9.46" />
  130. <Path Data="M46.8477,36.8872C62.3957,36.8872 74.9997,49.4912 74.9997,65.0402 74.9997,80.5882 62.3957,93.1932 46.8477,93.1932 31.2987,93.1932 18.6947,80.5882 18.6947,65.0402 18.6947,49.4912 31.2987,36.8872 46.8477,36.8872z" Stretch="Fill" Stroke="White" StrokeThickness="0.25" Width="56.555" Height="56.556" />
  131. </Canvas>
  132. </Canvas>
  133. </Viewbox>
  134. <TextBlock Text="A" FontSize="22" Foreground="Black" Canvas.Left="93" Canvas.Top="50" HorizontalAlignment="Left" VerticalAlignment="Top" Visibility="{Binding ElementName=loader, Path=WaferVisibleA,Converter={StaticResource boolToVisibility3}}"/>
  135. <TextBlock Text="B" FontSize="22" Foreground="Black" Canvas.Left="93" Canvas.Top="231" Height="23" Width="14" HorizontalAlignment="Center" VerticalAlignment="Top" Visibility="{Binding ElementName=loader, Path=WaferVisibleB,Converter={StaticResource boolToVisibility3}}"/>
  136. <Viewbox Width="126" Height="126" Canvas.Left="37" Canvas.Top="2" Visibility="{Binding ElementName=loader, Path=WaferVisibleA,Converter={StaticResource boolToVisibility3}}">
  137. <local:WaferCtrl WaferData="{Binding ElementName=loader, Path=LoaderWaferA}"/>
  138. </Viewbox>
  139. <Viewbox Width="126" Height="126" Canvas.Left="37" Canvas.Top="182" Visibility="{Binding ElementName=loader, Path=WaferVisibleB,Converter={StaticResource boolToVisibility3}}">
  140. <local:WaferCtrl WaferData="{Binding ElementName=loader, Path=LoaderWaferB}"/>
  141. </Viewbox>
  142. </Canvas>
  143. </Viewbox>
  144. </UserControl>