<ResourceDictionary
	xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
	xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
	xmlns:System="clr-namespace:System;assembly=mscorlib"
	xmlns:local="clr-namespace:ForzaUI">
    <!-- Resource dictionary entries should be defined here. -->

    <!-- Dimensions of the screen content, this is the native resolution for the UI. -->
    <System:Double x:Key="A_Double_SceneWidth">1920</System:Double>
    <System:Double x:Key="A_Double_SceneHeight">1080</System:Double>

    <System:Double x:Key="A_Double_DividerSize">2</System:Double>

    <Style x:Key="A_Style_ScreenSize" TargetType="FrameworkElement">
        <Setter Property="Width" Value="{StaticResource A_Double_SceneWidth}"/>
        <Setter Property="Height" Value="{StaticResource A_Double_SceneHeight}"/>
    </Style>

    <Style x:Key="A_Style_FrameworkElement_LayoutRoot"
           BasedOn="{StaticResource A_Style_ScreenSize}"
           TargetType="{x:Type FrameworkElement}">
        <Setter Property="VerticalAlignment"
                Value="Center"/>
        <Setter Property="HorizontalAlignment"
                Value="Center"/>
        <Setter Property="RenderTransformOrigin"
                Value="0.5,0.5" />
        <Setter Property="LayoutTransform">
            <Setter.Value>
                <ScaleTransform ScaleX="{Binding Path=ScaleValue, Source={StaticResource PART_UIResolutionScaler}}"
                                ScaleY="{Binding Path=ScaleValue, Source={StaticResource PART_UIResolutionScaler}}" />
            </Setter.Value>
        </Setter>
        <Setter Property="local:ZPanel.Transform">
            <Setter.Value>
                <ScaleTransform3D ScaleZ="{Binding Path=ScaleValue, Source={StaticResource PART_UIResolutionScaler}}" />
            </Setter.Value>
        </Setter>
    </Style>

    <!-- Scene padding defaults -->
    <Thickness x:Key="A_Thickness_ScenePadding">78</Thickness>
    <Thickness x:Key="A_Thickness_ScenePadding_TiledScene">72,72,72,120</Thickness>
    <Thickness x:Key="A_Thickness_ScenePadding_Opus">78,120,78,152</Thickness>
    <Thickness x:Key="A_Thickness_ScenePadding_Opus_BottomAnchor">78,120,78,102</Thickness>

    <Style x:Key="A_Style_Border_ScenePadding" 
           BasedOn="{StaticResource A_Style_FrameworkElement_LayoutRoot}"
           TargetType="Border">
        <Setter Property="Padding" Value="{StaticResource A_Thickness_ScenePadding}"/>
    </Style>

    <Style x:Key="A_Style_Border_ScenePadding_TiledScene" 
           BasedOn="{StaticResource A_Style_FrameworkElement_LayoutRoot}"
           TargetType="Border">
        <Setter Property="Padding" Value="{StaticResource A_Thickness_ScenePadding_TiledScene}"/>
    </Style>

    <Style x:Key="A_Style_Border_ScenePadding_Opus" 
           BasedOn="{StaticResource A_Style_FrameworkElement_LayoutRoot}"
           TargetType="Border">
        <Setter Property="Padding" Value="{StaticResource A_Thickness_ScenePadding_Opus}"/>
    </Style>

    <Style x:Key="A_Style_Border_ScenePadding_Opus_BottomAnchor" 
           BasedOn="{StaticResource A_Style_FrameworkElement_LayoutRoot}"
           TargetType="Border">
        <Setter Property="Padding" Value="{StaticResource A_Thickness_ScenePadding_Opus_BottomAnchor}"/>
        <Setter Property="VerticalAlignment"
                Value="Bottom"/>
    </Style>

</ResourceDictionary>