Data hosted with ♥ by Pastebin.com - Download Raw - See Original
  1. <!-- Skill Display (2) -->
  2.                         <ItemsControl x:Name="SkillsControl" Grid.Row="1" Margin="50,0,50,0" ItemsSource="{Binding Skills}">
  3.                             <ItemsControl.ItemsPanel>
  4.                                 <ItemsPanelTemplate>
  5.                                     <Grid>
  6.                                         <Grid.ColumnDefinitions>
  7.                                             <ColumnDefinition Width="*" />
  8.                                             <ColumnDefinition Width="*" />
  9.                                             <ColumnDefinition Width="*" />
  10.                                             <ColumnDefinition Width="*" />
  11.  
  12.                                             <ColumnDefinition Width="*" />
  13.                                             <ColumnDefinition Width="*" />
  14.                                             <ColumnDefinition Width="*" />
  15.                                             <ColumnDefinition Width="*" />
  16.  
  17.                                             <ColumnDefinition Width="*" />
  18.                                             <ColumnDefinition Width="*" />
  19.                                             <ColumnDefinition Width="*" />
  20.                                             <ColumnDefinition Width="*" />
  21.                                         </Grid.ColumnDefinitions>
  22.  
  23.                                         <Grid.RowDefinitions>
  24.                                             <RowDefinition Height="*" />
  25.                                             <RowDefinition Height="*" />
  26.                                             <RowDefinition Height="*" />
  27.                                             <RowDefinition Height="*" />
  28.                                             <RowDefinition Height="*" />
  29.                                             <RowDefinition Height="*" />
  30.                                             <RowDefinition Height="*" />
  31.                                             <RowDefinition Height="*" />
  32.                                             <RowDefinition Height="*" />
  33.                                         </Grid.RowDefinitions>
  34.                                     </Grid>
  35.                                 </ItemsPanelTemplate>
  36.                             </ItemsControl.ItemsPanel>
  37.                            
  38.                             <ItemsControl.ItemContainerStyle>
  39.                                 <Style>
  40.                                     <Setter Property="Grid.Row" Value="{Binding Row}" />
  41.                                     <Setter Property="Grid.Column" Value="{Binding Column}" />
  42.                                 </Style>
  43.                             </ItemsControl.ItemContainerStyle>
  44.  
  45.                             <ItemsControl.ItemTemplate>
  46.                                 <DataTemplate>
  47.                                     <Button Click="OnClickSkill" MouseMove="OnMouseMoveSkill" MouseLeave="OnMouseLeaveSkill" Style="{StaticResource SkillTree_SkillButton}" Content="{Binding Level, Converter={StaticResource IntegerToStringConverter}}" />
  48.                                 </DataTemplate>
  49.                             </ItemsControl.ItemTemplate>
  50.                         </ItemsControl>
  51. <!------------------------------------------------------------------------------------------------------------------->
  52. <!------------------------------------------------------------------------------------------------------------------->
  53. <!------------------------------------------------------------------------------------------------------------------->
  54.     <Style x:Key="SkillTree_SkillButton" TargetType="{x:Type Button}">
  55.         <Setter Property="Width" Value="60"/>
  56.         <Setter Property="Height" Value="48"/>
  57.         <Setter Property="Foreground" Value="{StaticResource MainFontBrush}"/>
  58.         <Setter Property="FontSize" Value="15"/>
  59.         <Setter Property="FontFamily" Value="{StaticResource MainFont}"/>
  60.         <Setter Property="FontWeight" Value="Bold"/>
  61.         <Setter Property="Template">
  62.             <Setter.Value>
  63.                 <ControlTemplate TargetType="{x:Type Button}">
  64.                     <ControlTemplate.Resources>
  65.                         <Storyboard x:Key="SkillButtonAnimatedClick">
  66.                             <DoubleAnimation AutoReverse="True" Duration="0:0:0.4" From="0" To="1" Storyboard.TargetName="Effect" Storyboard.TargetProperty="(Image.Opacity)">
  67.                                 <DoubleAnimation.EasingFunction>
  68.                                     <SineEase EasingMode="EaseOut" />
  69.                                 </DoubleAnimation.EasingFunction>
  70.                             </DoubleAnimation>
  71.                    
  72.                             <ColorAnimation AutoReverse="True" Duration="0:0:0.4" From="#96867355" To="#64ffffff" Storyboard.TargetName="Border" Storyboard.TargetProperty="(Border.BorderBrush).(SolidColorBrush.Color)">
  73.                                 <ColorAnimation.EasingFunction>
  74.                                     <SineEase EasingMode="EaseInOut" />
  75.                                 </ColorAnimation.EasingFunction>
  76.                             </ColorAnimation>
  77.                         </Storyboard>
  78.                     </ControlTemplate.Resources>
  79.  
  80.                     <Grid>
  81.                         <Canvas>
  82.                             <Line x:Name="Direction1" X1="26" Y1="26" X2="110" Y2="26" Stroke="#64867355" StrokeThickness="4" Visibility="Hidden" IsHitTestVisible="False" />
  83.                             <Line x:Name="Direction3" X1="20" Y1="44" X2="20" Y2="82" Stroke="#64867355" StrokeThickness="4" Visibility="Hidden" IsHitTestVisible="False" />
  84.                             <Line x:Name="Direction4" X1="20" Y1="44" X2="20" Y2="144" Stroke="#64867355" StrokeThickness="4" Visibility="Hidden" IsHitTestVisible="False" />
  85.                         </Canvas>
  86.  
  87.                         <Border x:Name="Border" Margin="4,4,0,0" BorderThickness="2" BorderBrush="#96867355" CornerRadius="2" Width="32" Height="44" HorizontalAlignment="Left" VerticalAlignment="Top">
  88.                             <Border.Effect>
  89.                                 <DropShadowEffect ShadowDepth="2" />
  90.                             </Border.Effect>
  91.                             <Grid>
  92.                                 <Image Stretch="Fill" Source="{Binding Icon}" />
  93.                                 <Image x:Name="Effect" Stretch="Fill" Source="{Binding Icon}" Opacity="0">
  94.                                     <Image.Effect>
  95.                                         <BlurEffect Radius="15.0"/>
  96.                                     </Image.Effect>
  97.                                 </Image>
  98.                                 <Canvas x:Name="Overlay" Background="#96000000"  Visibility="Hidden" />
  99.                             </Grid>
  100.                         </Border>
  101.  
  102.                         <TextBlock x:Name="Label" VerticalAlignment="Bottom" HorizontalAlignment="Right" Text="{TemplateBinding Content}" IsHitTestVisible="False">
  103.                             <TextBlock.Effect>
  104.                                 <DropShadowEffect BlurRadius="2" ShadowDepth="1" Direction="260" Color="#000000" />
  105.                             </TextBlock.Effect>
  106.                         </TextBlock>
  107.                     </Grid>
  108.                    
  109.                     <ControlTemplate.Triggers>
  110.                         <DataTrigger Binding="{Binding Direction}" Value="1">
  111.                             <Setter TargetName="Direction1" Property="Visibility" Value="Visible"/>
  112.                         </DataTrigger>
  113.                         <DataTrigger Binding="{Binding Direction}" Value="3">
  114.                             <Setter TargetName="Direction3" Property="Visibility" Value="Visible"/>
  115.                         </DataTrigger>
  116.                         <DataTrigger Binding="{Binding Direction}" Value="4">
  117.                             <Setter TargetName="Direction4" Property="Visibility" Value="Visible"/>
  118.                         </DataTrigger>
  119.  
  120.                         <DataTrigger Binding="{Binding State}" Value="0">
  121.                             <!--<Setter Property="IsEnabled" Value="False"/>-->
  122.                             <Setter TargetName="Overlay" Property="Visibility" Value="Visible"/>
  123.                             <Setter TargetName="Label" Property="Foreground" Value="#64ffffff"/>
  124.                         </DataTrigger>
  125.                         <DataTrigger Binding="{Binding State}" Value="1">
  126.                             <!--<Setter Property="IsEnabled" Value="True"/>-->
  127.                         </DataTrigger>
  128.                         <DataTrigger Binding="{Binding State}" Value="2">
  129.                             <!--<Setter Property="IsEnabled" Value="False"/>-->
  130.                             <Setter TargetName="Overlay" Property="Visibility" Value="Hidden"/>
  131.                             <Setter TargetName="Label" Property="Foreground" Value="#e6ffffff"/>
  132.                         </DataTrigger>
  133.  
  134.                         <!-- Mouse Over -->
  135.                         <MultiDataTrigger>
  136.                             <MultiDataTrigger.Conditions>
  137.                                 <Condition Binding="{Binding State}" Value="1"/>
  138.                                 <Condition Binding="{Binding RelativeSource={RelativeSource Self}, Path=IsMouseOver}" Value="True"/>
  139.                             </MultiDataTrigger.Conditions>
  140.                             <MultiDataTrigger.Setters>
  141.                                 <Setter TargetName="Label" Property="Foreground" Value="{StaticResource MainFontHighlightBrush}" />
  142.                                 <Setter TargetName="Overlay" Property="Visibility" Value="Visible" />
  143.                                 <Setter TargetName="Overlay" Property="Background" Value="#32FFFFFF" />
  144.                                 <Setter TargetName="Label" Property="Effect">
  145.                                     <Setter.Value>
  146.                                         <DropShadowEffect BlurRadius="2" ShadowDepth="1" Direction="260" Color="#ffffff" />
  147.                                     </Setter.Value>
  148.                                 </Setter>
  149.                             </MultiDataTrigger.Setters>
  150.                         </MultiDataTrigger>
  151.  
  152.                         <!-- Pressed -->
  153.                         <MultiDataTrigger>
  154.                             <MultiDataTrigger.Conditions>
  155.                                 <Condition Binding="{Binding State}" Value="1" />
  156.                                 <Condition Binding="{Binding RelativeSource={RelativeSource Self}, Path=IsPressed}" Value="True" />
  157.                             </MultiDataTrigger.Conditions>
  158.                             <MultiDataTrigger.Setters>
  159.                                 <Setter TargetName="Label" Property="Foreground" Value="{StaticResource MainFontHighlightBrush}" />
  160.                                 <Setter TargetName="Overlay" Property="Visibility" Value="Visible" />
  161.                                 <Setter TargetName="Overlay" Property="Background" Value="#64000000" />
  162.                                 <Setter TargetName="Label" Property="Effect">
  163.                                     <Setter.Value>
  164.                                         <DropShadowEffect BlurRadius="2" ShadowDepth="1" Direction="260" Color="#ffffff" />
  165.                                     </Setter.Value>
  166.                                 </Setter>
  167.                             </MultiDataTrigger.Setters>
  168.                         </MultiDataTrigger>
  169.                         <!--
  170.                         <EventTrigger RoutedEvent="Button.Click">
  171.                             <BeginStoryboard>
  172.                                 <Storyboard>
  173.                                     <DoubleAnimation AutoReverse="True" Duration="0:0:0.4" From="0" To="1" Storyboard.TargetName="Effect" Storyboard.TargetProperty="(Image.Opacity)">
  174.                                         <DoubleAnimation.EasingFunction>
  175.                                             <SineEase EasingMode="EaseOut" />
  176.                                         </DoubleAnimation.EasingFunction>
  177.                                     </DoubleAnimation>
  178.  
  179.                                     <ColorAnimation AutoReverse="True" Duration="0:0:0.4" From="#96867355" To="#64ffffff" Storyboard.TargetName="Border" Storyboard.TargetProperty="(Border.BorderBrush).(SolidColorBrush.Color)">
  180.                                         <ColorAnimation.EasingFunction>
  181.                                             <SineEase EasingMode="EaseInOut" />
  182.                                         </ColorAnimation.EasingFunction>
  183.                                     </ColorAnimation>
  184.                                 </Storyboard>
  185.                             </BeginStoryboard>
  186.                         </EventTrigger>
  187.                         -->
  188.                     </ControlTemplate.Triggers>
  189.                 </ControlTemplate>
  190.             </Setter.Value>
  191.         </Setter>
  192.     </Style>