﻿<UserControl x:Class="OpenTapEditor.VariablesControl"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
             xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
             xmlns:local="clr-namespace:OpenTapEditor"
             mc:Ignorable="d" 
             xmlns:ui="clr-namespace:UILib;assembly=UILib"
             xmlns:sys="clr-namespace:System;assembly=mscorlib"
             xmlns:addIn="clr-namespace:OpenTap.Addin;assembly=OpenTap"
             xmlns:plugin="clr-namespace:AddInPlugin;assembly=AddInPlugin"
             d:DesignHeight="450" d:DesignWidth="800">
    <UserControl.Resources>
        <ResourceDictionary>
            <ResourceDictionary.MergedDictionaries>
                <ResourceDictionary Source="/UILib;component/Themes/Generic.xaml"/>
            </ResourceDictionary.MergedDictionaries>
            <ObjectDataProvider x:Key="TypeEnum" MethodName="GetValues" ObjectType="{x:Type sys:Enum}">
                <ObjectDataProvider.MethodParameters>
                    <x:Type TypeName="addIn:TestVariableType"/>
                </ObjectDataProvider.MethodParameters>
            </ObjectDataProvider>
        </ResourceDictionary>
    </UserControl.Resources>
    <Border Grid.Column="0" Background="White"
BorderBrush="{StaticResource BorderDarkBrush}" BorderThickness="1">
        <Grid>
            <Grid.RowDefinitions>
                <RowDefinition Height="26"/>
                <RowDefinition Height="*"/>
                <RowDefinition Height="Auto"/>
            </Grid.RowDefinitions>

            <Border Grid.Row="0" Background="#E8E8E8"
        BorderBrush="{StaticResource BorderBrush}" BorderThickness="0,0,0,1">
                <Grid Margin="4,0">
                    <TextBlock Text="{DynamicResource 变量设置}" FontWeight="Bold" FontSize="11"
                   VerticalAlignment="Center"/>
                </Grid>
            </Border>

            <local:VariableTree Grid.Row="1" Datasource="{Binding Variables}"/>
        </Grid>
    </Border>

    <!--<Border Grid.Column="0" Background="White"
BorderBrush="{StaticResource BorderDarkBrush}" BorderThickness="1">
        <TabControl>
            <TabControl.Resources>
                <Style TargetType="TabItem">
                    <Setter Property="Padding" Value="16,6"/>
                    <Setter Property="Background" Value="#f2f3f5"/>
                    <Setter Property="BorderThickness" Value="1,1,1,0"/>
                    <Setter Property="BorderBrush" Value="{StaticResource BorderBrush}"/>
                    <Setter Property="FontSize" Value="11"/>
                    <Setter Property="Cursor" Value="Hand"/>
                    <Setter Property="Template">
                        <Setter.Value>
                            <ControlTemplate TargetType="TabItem">
                                <Border x:Name="border" Background="{TemplateBinding Background}"
                BorderBrush="{TemplateBinding BorderBrush}"
                BorderThickness="{TemplateBinding BorderThickness}"
                Padding="{TemplateBinding Padding}">
                                    <ContentPresenter x:Name="contentPresenter" 
                              ContentSource="Header"
                              HorizontalAlignment="Center" 
                              VerticalAlignment="Center"/>
                                </Border>
                                <ControlTemplate.Triggers>
                                    <Trigger Property="IsMouseOver" Value="True">
                                        <Setter TargetName="border" Property="Background" Value="#e0e9f2"/>
                                    </Trigger>
                                    <Trigger Property="IsSelected" Value="True">
                                        <Setter TargetName="border" Property="Background" Value="White"/>
                                        <Setter TargetName="border" Property="BorderThickness" Value="0,0,0,2"/>
                                        <Setter TargetName="border" Property="BorderBrush" Value="#3498DB"/>
                                    </Trigger>
                                </ControlTemplate.Triggers>
                            </ControlTemplate>
                        </Setter.Value>
                    </Setter>
                </Style>
            </TabControl.Resources>

            <TabItem Header="变量设置">
                <local:VariableTree Datasource="{Binding Variables}"/>
            </TabItem>

            <TabItem Header="子序列">
                <ListView ItemsSource="{Binding Sequences}"
                          SelectedItem="{Binding SelectedSequence}">
                    <ListView.ContextMenu>
                        <ContextMenu>
                            <MenuItem Header="添加子序列" Click="MenuItem_Click"/>
                        </ContextMenu>
                    </ListView.ContextMenu>
                    <ListView.ItemTemplate>
                        <DataTemplate>
                            <ui:EditBox PreSubmit="SequenceNamePreSubmit"
                                        Submited="SequenceNameSubmited"
                                        Value="{Binding SequenceName,Mode=TwoWay}"/>
                        </DataTemplate>
                    </ListView.ItemTemplate>
                </ListView>
            </TabItem>
        </TabControl>
        --><!--<TabControl>
            <TabItem Header="序列变量">
                <local:VariableTree Prefix="FileGlobals" Datasource="{Binding Variables}"/>
            </TabItem>

            <TabItem Header="全局变量">
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition/>
                        <RowDefinition Height="Auto"/>
                    </Grid.RowDefinitions>
                    <local:VariableTree Grid.Row="0" x:Name="sss"
                                        Prefix="StationGlobals"
                                        DataContext="{x:Static local:UIStationGlobalsManager.Instance}" Datasource="{Binding Datasource}"/>
                    <Button Grid.Row="1" Click="Button_Click">保存</Button>
                </Grid>
                -->
        <!--<DataGrid AutoGenerateColumns="False">
                    <DataGrid.Columns>
                        <DataGridTextColumn Width="*" Header="名称" Binding="{Binding Name}"/>
                        <DataGridComboBoxColumn Width="*" Header="类型" SelectedItemBinding="{Binding Type}"
                                                ItemsSource="{Binding Source={StaticResource TypeEnum}}" />
                        <DataGridTextColumn Width="*" Header="值" Binding="{Binding Value}"/>
                    </DataGrid.Columns>
                </DataGrid>-->
        <!--
                
            </TabItem>
        </TabControl>--><!--
    </Border>-->
</UserControl>
