aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/Views/LoadingView.xaml.cs
blob: 15eba3cf870495b95046b79d1756b856f1dcfe84 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

namespace Tango.MachineStudio.UI.Views
{
    /// <summary>
    /// Interaction logic for LoadingView.xaml
    /// </summary>
    public partial class LoadingView : UserControl
    {
        public LoadingView()
        {
            InitializeComponent();
        }
    }
}
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
                    xmlns:local="clr-namespace:Tango.Scripting.IDE.Themes">
    <Style x:Key="TangoTabControlStyle" TargetType="{x:Type TabControl}">
        <Setter Property="Padding" Value="2"/>
        <Setter Property="HorizontalContentAlignment" Value="Center"/>
        <Setter Property="VerticalContentAlignment" Value="Center"/>
        <Setter Property="Background" Value="Transparent"/>
        <Setter Property="BorderBrush" Value="Transparent"/>
        <Setter Property="BorderThickness" Value="1"/>
        <Setter Property="Foreground" Value="{DynamicResource ControlTextBrush}"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type TabControl}">
                    <Grid x:Name="templateRoot" ClipToBounds="true" SnapsToDevicePixels="true" KeyboardNavigation.TabNavigation="Local">
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition x:Name="ColumnDefinition0"/>
                            <ColumnDefinition x:Name="ColumnDefinition1" Width="0"/>
                        </Grid.ColumnDefinitions>
                        <Grid.RowDefinitions>
                            <RowDefinition x:Name="RowDefinition0" Height="Auto"/>
                            <RowDefinition x:Name="RowDefinition1" Height="*"/>
                        </Grid.RowDefinitions>
                        <TabPanel x:Name="headerPanel" Background="Transparent" Grid.Column="0" IsItemsHost="true" Margin="2,1,2,0" Grid.Row="0" KeyboardNavigation.TabIndex="1" Panel.ZIndex="1"/>
                        <Border x:Name="contentPanel" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="0,1,0,0" Background="{DynamicResource TabItem.Content.Static}" Grid.Column="0" KeyboardNavigation.DirectionalNavigation="Contained" Grid.Row="1" KeyboardNavigation.TabIndex="2" KeyboardNavigation.TabNavigation="Local">
                            <ContentPresenter x:Name="PART_SelectedContentHost" ContentSource="SelectedContent" Margin="{TemplateBinding Padding}" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/>
                        </Border>
                    </Grid>
                    <ControlTemplate.Triggers>
                        <Trigger Property="TabStripPlacement" Value="Bottom">
                            <Setter Property="Grid.Row" TargetName="headerPanel" Value="1"/>
                            <Setter Property="Grid.Row" TargetName="contentPanel" Value="0"/>
                            <Setter Property="Height" TargetName="RowDefinition0" Value="*"/>
                            <Setter Property="Height" TargetName="RowDefinition1" Value="Auto"/>
                            <Setter Property="Margin" TargetName="headerPanel" Value="0,0,2,2"/>
                        </Trigger>
                        <Trigger Property="TabStripPlacement" Value="Left">
                            <Setter Property="Grid.Row" TargetName="headerPanel" Value="0"/>
                            <Setter Property="Grid.Row" TargetName="contentPanel" Value="0"/>
                            <Setter Property="Grid.Column" TargetName="headerPanel" Value="0"/>
                            <Setter Property="Grid.Column" TargetName="contentPanel" Value="1"/>
                            <Setter Property="Width" TargetName="ColumnDefinition0" Value="Auto"/>
                            <Setter Property="Width" TargetName="ColumnDefinition1" Value="*"/>
                            <Setter Property="Height" TargetName="RowDefinition0" Value="*"/>
                            <Setter Property="Height" TargetName="RowDefinition1" Value="0"/>
                            <Setter Property="Margin" TargetName="headerPanel" Value="2,2,0,2"/>
                        </Trigger>
                        <Trigger Property="TabStripPlacement" Value="Right">
                            <Setter Property="Grid.Row" TargetName="headerPanel" Value="0"/>
                            <Setter Property="Grid.Row" TargetName="contentPanel" Value="0"/>
                            <Setter Property="Grid.Column" TargetName="headerPanel" Value="1"/>
                            <Setter Property="Grid.Column" TargetName="contentPanel" Value="0"/>
                            <Setter Property="Width" TargetName="ColumnDefinition0" Value="*"/>
                            <Setter Property="Width" TargetName="ColumnDefinition1" Value="Auto"/>
                            <Setter Property="Height" TargetName="RowDefinition0" Value="*"/>
                            <Setter Property="Height" TargetName="RowDefinition1" Value="0"/>
                            <Setter Property="Margin" TargetName="headerPanel" Value="0,2,2,2"/>
                        </Trigger>
                        <Trigger Property="IsEnabled" Value="false">
                            <Setter Property="TextElement.Foreground" TargetName="templateRoot" Value="{DynamicResource ControlTextBrush}"/>
                        </Trigger>
                    </ControlTemplate.Triggers>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
        <Style.Resources>
            <Style  TargetType="{x:Type TabItem}">
                <Setter Property="FocusVisualStyle" Value="{StaticResource FocusVisual}"/>
                <Setter Property="Foreground" Value="{DynamicResource ControlTextBrush}"/>
                <Setter Property="Background" Value="{DynamicResource TabItem.Static.Background}"/>
                <Setter Property="BorderBrush" Value="{DynamicResource TabItem.Static.Border}"/>
                <Setter Property="Margin" Value="0"/>
                <Setter Property="Padding" Value="6,2,6,2"/>
                <Setter Property="HorizontalContentAlignment" Value="Stretch"/>
                <Setter Property="VerticalContentAlignment" Value="Stretch"/>
                <Setter Property="Template">
                    <Setter.Value>
                        <ControlTemplate TargetType="{x:Type TabItem}">
                            <Grid x:Name="templateRoot" SnapsToDevicePixels="true">
                                <Border x:Name="mainBorder" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="1,1,1,0" Background="{TemplateBinding Background}" Margin="0,-1,0,0">
                                    <Border x:Name="innerBorder" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="1,1,1,0" Background="{TemplateBinding Background}" Margin="0" Opacity="0"/>
                                </Border>
                                <StackPanel Orientation="Horizontal" Margin="0" >
                                    <ContentPresenter x:Name="contentPresenter" ContentSource="Header" Focusable="False" HorizontalAlignment="{Binding HorizontalContentAlignment, RelativeSource={RelativeSource AncestorType={x:Type ItemsControl}}}" Margin="{TemplateBinding Padding}" RecognizesAccessKey="True" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" VerticalAlignment="{Binding VerticalContentAlignment, RelativeSource={RelativeSource AncestorType={x:Type ItemsControl}}}"/>
                                    <Button x:Name="CloseButton"  Width="18" Height="18" 
                                Margin="6,0,2,0" Padding="0" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" HorizontalAlignment="Center" 
                                Command="{Binding DataContext.CloseProjectItemCommand, RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}"
                                CommandParameter="{Binding RelativeSource={RelativeSource AncestorType={x:Type TabItem}},  Path=Content}"
                                VerticalAlignment="Center" Focusable="False" Visibility="Hidden">
                                        <Grid Margin="0" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" >
                                            <Line StrokeThickness="2" StrokeStartLineCap="Round"  StrokeEndLineCap="Round" Stroke="{DynamicResource ControlTextBrush}" X1="1" Y1="1" X2="9" Y2="9" HorizontalAlignment="Center" VerticalAlignment="Center" />
                                            <Line StrokeThickness="2" StrokeStartLineCap="Round" StrokeEndLineCap="Round" Stroke="{DynamicResource ControlTextBrush}" X1="1" Y1="9" X2="9" Y2="1" HorizontalAlignment="Center" VerticalAlignment="Center" />
                                        </Grid>
                                        <Button.Style>
                                            <Style TargetType="{x:Type Button}">
                                                <Setter Property="Background" Value="Transparent"/>
                                                <Setter Property="Template">
                                                    <Setter.Value>
                                                        <ControlTemplate TargetType="{x:Type Button}">
                                                            <Border  Background="{TemplateBinding Background}">
                                                                <Grid>
                                                                    <Rectangle x:Name="background"  Fill="{DynamicResource TabItem.Static.Background}" Opacity="1"/>
                                                                    <ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center"/>
                                                                </Grid>
                                                            </Border>
                                                            <ControlTemplate.Triggers>
                                                                <Trigger Property="IsMouseOver" Value="True">
                                                                    <Setter TargetName="background" Property="Fill" Value="#E51C97EA"/>
                                                                </Trigger>
                                                            </ControlTemplate.Triggers>
                                                        </ControlTemplate>
                                                    </Setter.Value>
                                                </Setter>
                                                
                                            </Style>
                                        </Button.Style>
                                    </Button>
                                </StackPanel>
                            </Grid>
                            <ControlTemplate.Triggers>
                                <MultiDataTrigger>
                                    <MultiDataTrigger.Conditions>
                                        <Condition Binding="{Binding IsMouseOver, RelativeSource={RelativeSource Self}}" Value="true"/>
                                        <Condition Binding="{Binding TabStripPlacement, RelativeSource={RelativeSource AncestorType={x:Type TabControl}}}" Value="Left"/>
                                    </MultiDataTrigger.Conditions>
                                    <Setter Property="Background" TargetName="mainBorder" Value="{DynamicResource TabItem.MouseOver.Background}"/>
                                    <Setter Property="BorderBrush" TargetName="mainBorder" Value="{DynamicResource TabItem.MouseOver.Border}"/>
                                    <Setter Property="BorderThickness" TargetName="innerBorder" Value="1,1,0,1"/>
                                    <Setter Property="BorderThickness" TargetName="mainBorder" Value="1,1,0,1"/>
                                    <Setter Property="Visibility" TargetName="CloseButton" Value="Visible"/>
                                </MultiDataTrigger>
                                <MultiDataTrigger>
                                    <MultiDataTrigger.Conditions>
                                        <Condition Binding="{Binding IsMouseOver, RelativeSource={RelativeSource Self}}" Value="true"/>
                                        <Condition Binding="{Binding TabStripPlacement, RelativeSource={RelativeSource AncestorType={x:Type TabControl}}}" Value="Bottom"/>
                                    </MultiDataTrigger.Conditions>
                                    <Setter Property="Opacity" TargetName="contentPresenter" Value="1.0"/>
                                    <Setter Property="Margin" Value="-2,0,-2,0"/>
                                    <Setter Property="BorderBrush" TargetName="mainBorder" Value="{DynamicResource TabItem.MouseOver.Bottom.Background}"/>
                                    <Setter Property="Background" TargetName="mainBorder" Value="{DynamicResource TabItem.MouseOver.Bottom.Background}"/>
                                    <Setter Property="BorderThickness" TargetName="innerBorder" Value="1,0,1,1"/>
                                    <Setter Property="BorderThickness" TargetName="mainBorder" Value="1,0,1,1"/>
                                    <Setter Property="TextElement.Foreground" TargetName="templateRoot" Value="{DynamicResource TabItem.Selected.Background}"/>
                                </MultiDataTrigger>
                                <MultiDataTrigger>
                                    <MultiDataTrigger.Conditions>
                                        <Condition Binding="{Binding IsMouseOver, RelativeSource={RelativeSource Self}}" Value="true"/>
                                        <Condition Binding="{Binding TabStripPlacement, RelativeSource={RelativeSource AncestorType={x:Type TabControl}}}" Value="Right"/>
                                    </MultiDataTrigger.Conditions>
                                    <Setter Property="Background" TargetName="mainBorder" Value="{DynamicResource TabItem.MouseOver.Background}"/>
                                    <Setter Property="BorderBrush" TargetName="mainBorder" Value="{DynamicResource TabItem.MouseOver.Border}"/>
                                    <Setter Property="BorderThickness" TargetName="innerBorder" Value="0,1,1,1"/>
                                    <Setter Property="BorderThickness" TargetName="mainBorder" Value="0,1,1,1"/>
                                    <Setter Property="Visibility" TargetName="CloseButton" Value="Visible"/>
                                </MultiDataTrigger>
                                <MultiDataTrigger>
                                    <MultiDataTrigger.Conditions>
                                        <Condition Binding="{Binding IsMouseOver, RelativeSource={RelativeSource Self}}" Value="true"/>
                                        <Condition Binding="{Binding TabStripPlacement, RelativeSource={RelativeSource AncestorType={x:Type TabControl}}}" Value="Top"/>
                                    </MultiDataTrigger.Conditions>
                                    <Setter Property="Visibility" TargetName="CloseButton" Value="Visible"/>
                                    <Setter Property="Background" TargetName="mainBorder" Value="{DynamicResource TabItem.MouseOver.Background}"/>
                                    <Setter Property="BorderBrush" TargetName="mainBorder" Value="{DynamicResource TabItem.MouseOver.Border}"/>
                                    <Setter Property="BorderThickness" TargetName="innerBorder" Value="1,1,1,0"/>
                                    <Setter Property="BorderThickness" TargetName="mainBorder" Value="1,1,1,0"/>
                                </MultiDataTrigger>
                                <MultiDataTrigger>
                                    <MultiDataTrigger.Conditions>
                                        <Condition Binding="{Binding IsEnabled, RelativeSource={RelativeSource Self}}" Value="false"/>
                                        <Condition Binding="{Binding TabStripPlacement, RelativeSource={RelativeSource AncestorType={x:Type TabControl}}}" Value="Left"/>
                                    </MultiDataTrigger.Conditions>
                                    <Setter Property="Opacity" TargetName="contentPresenter" Value="0.56"/>
                                    <Setter Property="Background" TargetName="mainBorder" Value="{DynamicResource TabItem.Disabled.Background}"/>
                                    <Setter Property="BorderBrush" TargetName="mainBorder" Value="{DynamicResource TabItem.Disabled.Border}"/>
                                    <Setter Property="BorderThickness" TargetName="innerBorder" Value="1,1,0,1"/>
                                    <Setter Property="BorderThickness" TargetName="mainBorder" Value="1,1,0,1"/>
                                </MultiDataTrigger>
                                <MultiDataTrigger>
                                    <MultiDataTrigger.Conditions>
                                        <Condition Binding="{Binding IsEnabled, RelativeSource={RelativeSource Self}}" Value="false"/>
                                        <Condition Binding="{Binding TabStripPlacement, RelativeSource={RelativeSource AncestorType={x:Type TabControl}}}" Value="Bottom"/>
                                    </MultiDataTrigger.Conditions>
                                    <Setter Property="Opacity" TargetName="contentPresenter" Value="0.56"/>
                                    <Setter Property="Background" TargetName="mainBorder" Value="Transparent"/>
                                    <Setter Property="BorderBrush" TargetName="mainBorder" Value="Transparent"/>
                                    <Setter Property="BorderThickness" TargetName="innerBorder" Value="1,0,1,1"/>
                                    <Setter Property="BorderThickness" TargetName="mainBorder" Value="1,0,1,1"/>
                                    <Setter Property="Visibility" TargetName="CloseButton" Value="Collapsed"/>
                                </MultiDataTrigger>
                                <MultiDataTrigger>
                                    <MultiDataTrigger.Conditions>
                                        <Condition Binding="{Binding IsEnabled, RelativeSource={RelativeSource Self}}" Value="false"/>
                                        <Condition Binding="{Binding TabStripPlacement, RelativeSource={RelativeSource AncestorType={x:Type TabControl}}}" Value="Right"/>
                                    </MultiDataTrigger.Conditions>
                                    <Setter Property="Opacity" TargetName="contentPresenter" Value="0.56"/>
                                    <Setter Property="Background" TargetName="mainBorder" Value="{DynamicResource TabItem.Disabled.Background}"/>
                                    <Setter Property="BorderBrush" TargetName="mainBorder" Value="{DynamicResource TabItem.Disabled.Border}"/>
                                    <Setter Property="BorderThickness" TargetName="innerBorder" Value="0,1,1,1"/>
                                    <Setter Property="BorderThickness" TargetName="mainBorder" Value="0,1,1,1"/>
                                </MultiDataTrigger>
                                <MultiDataTrigger>
                                    <MultiDataTrigger.Conditions>
                                        <Condition Binding="{Binding IsEnabled, RelativeSource={RelativeSource Self}}" Value="false"/>
                                        <Condition Binding="{Binding TabStripPlacement, RelativeSource={RelativeSource AncestorType={x:Type TabControl}}}" Value="Top"/>
                                    </MultiDataTrigger.Conditions>
                                    <Setter Property="Opacity" TargetName="contentPresenter" Value="0.56"/>
                                    <Setter Property="Background" TargetName="mainBorder" Value="{DynamicResource TabItem.Disabled.Background}"/>
                                    <Setter Property="BorderBrush" TargetName="mainBorder" Value="{DynamicResource TabItem.Disabled.Border}"/>
                                    <Setter Property="BorderThickness" TargetName="innerBorder" Value="1,1,1,0"/>
                                    <Setter Property="BorderThickness" TargetName="mainBorder" Value="1,1,1,0"/>
                                </MultiDataTrigger>
                                <MultiDataTrigger>
                                    <MultiDataTrigger.Conditions>
                                        <Condition Binding="{Binding IsSelected, RelativeSource={RelativeSource Self}}" Value="false"/>
                                        <Condition Binding="{Binding TabStripPlacement, RelativeSource={RelativeSource AncestorType={x:Type TabControl}}}" Value="Left"/>
                                    </MultiDataTrigger.Conditions>
                                    <Setter Property="BorderThickness" TargetName="innerBorder" Value="1,1,0,1"/>
                                    <Setter Property="BorderThickness" TargetName="mainBorder" Value="1,1,0,1"/>
                                </MultiDataTrigger>
                                <MultiDataTrigger>
                                    <MultiDataTrigger.Conditions>
                                        <Condition Binding="{Binding IsSelected, RelativeSource={RelativeSource Self}}" Value="true"/>
                                        <Condition Binding="{Binding TabStripPlacement, RelativeSource={RelativeSource AncestorType={x:Type TabControl}}}" Value="Left"/>
                                    </MultiDataTrigger.Conditions>
                                    <Setter Property="Panel.ZIndex" Value="1"/>
                                    <Setter Property="Margin" Value="-2,-2,0,-2"/>
                                    <Setter Property="Opacity" TargetName="innerBorder" Value="1"/>
                                    <Setter Property="BorderThickness" TargetName="innerBorder" Value="1,1,0,1"/>
                                    <Setter Property="BorderThickness" TargetName="mainBorder" Value="1,1,0,1"/>
                                    <Setter Property="Visibility" TargetName="CloseButton" Value="Visible"/>
                                    <Setter Property="Background" TargetName="mainBorder" Value="{DynamicResource TabItem.MouseOver.Background}"/>
                                    <Setter Property="BorderBrush" TargetName="mainBorder" Value="{DynamicResource TabItem.MouseOver.Background}"/>
                                </MultiDataTrigger>
                                <MultiDataTrigger>
                                    <MultiDataTrigger.Conditions>
                                        <Condition Binding="{Binding IsSelected, RelativeSource={RelativeSource Self}}" Value="false"/>
                                        <Condition Binding="{Binding TabStripPlacement, RelativeSource={RelativeSource AncestorType={x:Type TabControl}}}" Value="Bottom"/>
                                    </MultiDataTrigger.Conditions>
                                    <Setter Property="BorderThickness" TargetName="innerBorder" Value="1,0,1,1"/>
                                    <Setter Property="BorderThickness" TargetName="mainBorder" Value="1,0,1,1"/>
                                    <Setter Property="Visibility" TargetName="CloseButton" Value="Collapsed"/>
                                    <Setter Property="BorderBrush" TargetName="mainBorder" Value="Transparent"/>
                                </MultiDataTrigger>
                                <MultiDataTrigger>
                                    <MultiDataTrigger.Conditions>
                                        <Condition Binding="{Binding IsSelected, RelativeSource={RelativeSource Self}}" Value="true"/>
                                        <Condition Binding="{Binding TabStripPlacement, RelativeSource={RelativeSource AncestorType={x:Type TabControl}}}" Value="Bottom"/>
                                    </MultiDataTrigger.Conditions>
                                    <Setter Property="Panel.ZIndex" Value="1"/>
                                    <Setter Property="Margin" Value="-2,0,-2,0"/>
                                    <Setter Property="Opacity" TargetName="innerBorder" Value="1"/>
                                    <Setter Property="BorderThickness" TargetName="innerBorder" Value="1,0,1,1"/>
                                    <Setter Property="BorderThickness" TargetName="mainBorder" Value="1,0,1,1"/>
                                    <Setter Property="TextElement.Foreground" TargetName="templateRoot" Value="{DynamicResource TabItem.MouseOver.Background}"/>
                                    <Setter Property="Visibility" TargetName="CloseButton" Value="Collapsed"/>
                                    <Setter Property="Background" TargetName="mainBorder" Value="{DynamicResource TabItem.Content.Static}"/>
                                    <Setter Property="BorderBrush" TargetName="mainBorder" Value="{DynamicResource TabItem.Disabled.Background}"/>
                                </MultiDataTrigger>
                                <MultiDataTrigger>
                                    <MultiDataTrigger.Conditions>
                                        <Condition Binding="{Binding IsSelected, RelativeSource={RelativeSource Self}}" Value="false"/>
                                        <Condition Binding="{Binding TabStripPlacement, RelativeSource={RelativeSource AncestorType={x:Type TabControl}}}" Value="Right"/>
                                    </MultiDataTrigger.Conditions>
                                    <Setter Property="BorderThickness" TargetName="innerBorder" Value="0,1,1,1"/>
                                    <Setter Property="BorderThickness" TargetName="mainBorder" Value="0,1,1,1"/>
                                </MultiDataTrigger>
                                <MultiDataTrigger>
                                    <MultiDataTrigger.Conditions>
                                        <Condition Binding="{Binding IsSelected, RelativeSource={RelativeSource Self}}" Value="true"/>
                                        <Condition Binding="{Binding TabStripPlacement, RelativeSource={RelativeSource AncestorType={x:Type TabControl}}}" Value="Right"/>
                                    </MultiDataTrigger.Conditions>
                                    <Setter Property="Panel.ZIndex" Value="1"/>
                                    <Setter Property="Margin" Value="0,-2,-2,-2"/>
                                    <Setter Property="Opacity" TargetName="innerBorder" Value="1"/>
                                    <Setter Property="BorderThickness" TargetName="innerBorder" Value="0,1,1,1"/>
                                    <Setter Property="BorderThickness" TargetName="mainBorder" Value="0,1,1,1"/>
                                    <Setter Property="Visibility" TargetName="CloseButton" Value="Visible"/>
                                    <Setter Property="Background" TargetName="mainBorder" Value="{DynamicResource TabItem.MouseOver.Background}"/>
                                    <Setter Property="BorderBrush" TargetName="mainBorder" Value="{DynamicResource TabItem.MouseOver.Background}"/>
                                </MultiDataTrigger>
                                <MultiDataTrigger>
                                    <MultiDataTrigger.Conditions>
                                        <Condition Binding="{Binding IsSelected, RelativeSource={RelativeSource Self}}" Value="false"/>
                                        <Condition Binding="{Binding TabStripPlacement, RelativeSource={RelativeSource AncestorType={x:Type TabControl}}}" Value="Top"/>
                                    </MultiDataTrigger.Conditions>
                                    <Setter Property="BorderThickness" TargetName="innerBorder" Value="1,1,1,0"/>
                                    <Setter Property="BorderThickness" TargetName="mainBorder" Value="1,1,1,0"/>
                                </MultiDataTrigger>
                                <MultiDataTrigger>
                                    <MultiDataTrigger.Conditions>
                                        <Condition Binding="{Binding IsSelected, RelativeSource={RelativeSource Self}}" Value="true"/>
                                        <Condition Binding="{Binding TabStripPlacement, RelativeSource={RelativeSource AncestorType={x:Type TabControl}}}" Value="Top"/>
                                    </MultiDataTrigger.Conditions>
                                    <Setter Property="Panel.ZIndex" Value="1"/>
                                    <Setter Property="Margin" Value="-2,-2,-2,0"/>
                                    <Setter Property="Opacity" TargetName="innerBorder" Value="1"/>
                                    <Setter Property="BorderThickness" TargetName="innerBorder" Value="1,1,1,0"/>
                                    <Setter Property="BorderThickness" TargetName="mainBorder" Value="1,1,1,0"/>
                                    <Setter Property="Background" TargetName="mainBorder" Value="{DynamicResource TabItem.MouseOver.Background}"/>
                                    <Setter Property="BorderBrush" TargetName="mainBorder" Value="{DynamicResource TabItem.MouseOver.Background}"/>
                                    <Setter Property="Visibility" TargetName="CloseButton" Value="Visible"/>
                                </MultiDataTrigger>
                            </ControlTemplate.Triggers>
                        </ControlTemplate>
                    </Setter.Value>
                </Setter>
            </Style>
        </Style.Resources>
    </Style>
    <Style x:Key="FocusVisual">
        <Setter Property="Control.Template">
            <Setter.Value>
                <ControlTemplate>
                    <Rectangle Margin="2" SnapsToDevicePixels="true" Stroke="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}" StrokeThickness="1" StrokeDashArray="1 2"/>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>
    
    <Style x:Key="TangoGroupBoxStyle" TargetType="{x:Type GroupBox}">
        <Setter Property="BorderBrush" Value="Transparent"/>
        <Setter Property="BorderThickness" Value="1"/>
        <Setter Property="Background" Value="{DynamicResource Background.Static}"/>
        <Setter Property="Foreground" Value="{DynamicResource ControlTextBrush}"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type GroupBox}">
                    <Grid SnapsToDevicePixels="true">
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition Width="Auto"/>
                            <ColumnDefinition Width="*"/>
                        </Grid.ColumnDefinitions>
                        <Grid.RowDefinitions>
                            <RowDefinition Height="Auto"/>
                            <RowDefinition Height="Auto"/>
                            <RowDefinition Height="*"/>
                        </Grid.RowDefinitions>
                        <Border BorderBrush="{DynamicResource ListBorder}" BorderThickness="{TemplateBinding BorderThickness}" 
                                    Background="{TemplateBinding Background}" 
                                    Grid.ColumnSpan="2" 
                                    Grid.Column="0" CornerRadius="0" 
                                    Grid.Row="0" 
                                    Grid.RowSpan="3">
                        </Border>
                        <Border x:Name="Header" Grid.Column="0" Padding="3,1,3,0" Grid.Row="0" Grid.RowSpan="2" BorderBrush="Transparent" BorderThickness="1" Margin="1" Grid.ColumnSpan="2">
                            <ContentPresenter ContentSource="Header" RecognizesAccessKey="True" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/>
                        </Border>
                        <ContentPresenter Grid.Row="2" Margin="0,1,0,0"  SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" Grid.ColumnSpan="2" />
                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>
</ResourceDictionary>