<Windowx:Class="VBASync.WPF.MainWindow"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d="http://schemas.microsoft.com/expression/blend/2008"xmlns:l10n="clr-namespace:VBASync.Localization;assembly=VBASync"xmlns:local="clr-namespace:VBASync.WPF"xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"x:Name="ThisWindow"Title="{x:Static l10n:VBASyncResources.MWTitle}"Width="400"Height="600"MinWidth="375"MinHeight="500"x:ClassModifier="internal"Background="{DynamicResource {x:Static SystemColors.ControlBrushKey}}"Closed="Window_Closed"Icon="Icons/VBA Sync Simple.ico"Loaded="Window_Loaded"mc:Ignorable="d"><Window.InputBindings><KeyBindingKey="L"Command="{Binding LoadLastSessionCommand}"Modifiers="Ctrl" /><KeyBindingKey="O"Command="{Binding BrowseForSessionCommand}"Modifiers="Ctrl" /><KeyBindingKey="S"Command="{Binding SaveSessionCommand}"Modifiers="Ctrl" /></Window.InputBindings><Window.Resources><Style x:Key="Level1" TargetType="{x:Type FrameworkElement}"><Setter Property="Margin" Value="4,8,0,0" /></Style><Style x:Key="Level1Close" TargetType="{x:Type FrameworkElement}"><Setter Property="Margin" Value="4,4,0,0" /></Style><Style x:Key="Level1VeryClose" TargetType="{x:Type FrameworkElement}"><Setter Property="Margin" Value="4,2,0,0" /></Style><Style x:Key="Level1Solid" TargetType="{x:Type FrameworkElement}"><Setter Property="Margin" Value="4,0,0,0" /></Style><Style x:Key="Level2" TargetType="{x:Type FrameworkElement}"><Setter Property="Margin" Value="20,4,0,0" /></Style><Style x:Key="ExpanderChild" TargetType="{x:Type FrameworkElement}"><Setter Property="Margin" Value="16,4,0,0" /><Setter Property="HorizontalAlignment" Value="Stretch" /></Style></Window.Resources><DockPanel><Menu Margin="4" DockPanel.Dock="Top"><MenuItem Header="{x:Static l10n:VBASyncResources.MWFileMenu}"><MenuItemCommand="{Binding SaveSessionCommand}"Header="{x:Static l10n:VBASyncResources.MWSaveSessionMenu}"InputGestureText="{x:Static l10n:VBASyncResources.CtrlS}" /><MenuItemCommand="{Binding BrowseForSessionCommand}"Header="{x:Static l10n:VBASyncResources.MWLoadSessionMenu}"InputGestureText="{x:Static l10n:VBASyncResources.CtrlO}" /><MenuItemCommand="{Binding LoadLastSessionCommand}"Header="{x:Static l10n:VBASyncResources.MWLoadLastMenu}"InputGestureText="{x:Static l10n:VBASyncResources.CtrlL}" /><Separator /><MenuItem Click="SettingsMenu_Click" Header="{x:Static l10n:VBASyncResources.MWSettingsMenu}" /><Separator Visibility="{Binding RecentFiles, Converter={x:Static local:WpfStatic.BindingListToVisibleIfHasItemCount}, ConverterParameter=1}" /><MenuItemCommand="{Binding OpenRecentCommand}"CommandParameter="1"Header="{Binding RecentFiles, Converter={x:Static local:WpfStatic.RecentFilesHeader}, ConverterParameter=1}"Visibility="{Binding RecentFiles, Converter={x:Static local:WpfStatic.BindingListToVisibleIfHasItemCount}, ConverterParameter=1}" /><MenuItemCommand="{Binding OpenRecentCommand}"CommandParameter="2"Header="{Binding RecentFiles, Converter={x:Static local:WpfStatic.RecentFilesHeader}, ConverterParameter=2}"Visibility="{Binding RecentFiles, Converter={x:Static local:WpfStatic.BindingListToVisibleIfHasItemCount}, ConverterParameter=2}" /><MenuItemCommand="{Binding OpenRecentCommand}"CommandParameter="3"Header="{Binding RecentFiles, Converter={x:Static local:WpfStatic.RecentFilesHeader}, ConverterParameter=3}"Visibility="{Binding RecentFiles, Converter={x:Static local:WpfStatic.BindingListToVisibleIfHasItemCount}, ConverterParameter=3}" /><MenuItemCommand="{Binding OpenRecentCommand}"CommandParameter="4"Header="{Binding RecentFiles, Converter={x:Static local:WpfStatic.RecentFilesHeader}, ConverterParameter=4}"Visibility="{Binding RecentFiles, Converter={x:Static local:WpfStatic.BindingListToVisibleIfHasItemCount}, ConverterParameter=4}" /><MenuItemCommand="{Binding OpenRecentCommand}"CommandParameter="5"Header="{Binding RecentFiles, Converter={x:Static local:WpfStatic.RecentFilesHeader}, ConverterParameter=5}"Visibility="{Binding RecentFiles, Converter={x:Static local:WpfStatic.BindingListToVisibleIfHasItemCount}, ConverterParameter=5}" /><Separator /><MenuItemClick="ExitMenu_Click"Header="{x:Static l10n:VBASyncResources.MWExitMenu}"InputGestureText="{x:Static l10n:VBASyncResources.AltF4}" /></MenuItem><MenuItem Header="{x:Static l10n:VBASyncResources.MWEditMenu}"><MenuItem Command="ApplicationCommands.Undo" /><MenuItem Command="ApplicationCommands.Redo" /><Separator /><MenuItem Command="ApplicationCommands.Cut" /><MenuItem Command="ApplicationCommands.Copy" /><MenuItem Command="ApplicationCommands.Paste" /><MenuItem Command="ApplicationCommands.Delete" /><Separator /><MenuItem Command="ApplicationCommands.SelectAll" /></MenuItem><MenuItem Header="{x:Static l10n:VBASyncResources.MWHelpMenu}"><MenuItem Click="AboutMenu_Click" Header="{x:Static l10n:VBASyncResources.MWAboutMenu}" /></MenuItem></Menu><BorderHeight="1"Background="DimGray"DockPanel.Dock="Top" /><Grid Margin="4,8,4,4"><Grid.RowDefinitions><RowDefinition Height="auto" /><RowDefinition Height="*" /><RowDefinition Height="auto" /><RowDefinition Height="auto" /></Grid.RowDefinitions><local:SessionViewx:Name="SessionCtl"DataContext="{Binding Session}"FocusControlOnEnter="{Binding ElementName=OkButton}" /><DataGridx:Name="ChangesGrid"Grid.Row="1"Margin="0,26,0,0"AutoGenerateColumns="False"BorderBrush="{x:Null}"CanUserAddRows="False"CanUserDeleteRows="False"CanUserResizeRows="False"DataContext="{Binding Changes}"GridLinesVisibility="None"HorizontalScrollBarVisibility="Disabled"IsSynchronizedWithCurrentItem="False"ItemsSource="{Binding}"KeyboardNavigation.TabNavigation="Once"MouseDoubleClick="ChangesGrid_MouseDoubleClick"SelectionMode="Single"SelectionUnit="FullRow"><DataGrid.Resources><local:ChangeTypeToBrushConverter x:Key="ForeColorConverter" /><local:ModuleTypeToIconConverter x:Key="IconConverter" /></DataGrid.Resources><DataGrid.Style><StaticResource ResourceKey="Level1Close" /></DataGrid.Style><DataGrid.CellStyle><Style TargetType="{x:Type DataGridCell}"><Setter Property="Template"><Setter.Value><ControlTemplate TargetType="{x:Type DataGridCell}"><BorderPadding="2,2,3,3"Background="{TemplateBinding Background}"KeyboardNavigation.IsTabStop="False"><ContentPresenter SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" /></Border></ControlTemplate></Setter.Value></Setter></Style></DataGrid.CellStyle><DataGrid.RowStyle><Style TargetType="{x:Type DataGridRow}"><Setter Property="Foreground" Value="{Binding ChangeType, Converter={StaticResource ForeColorConverter}}" /></Style></DataGrid.RowStyle><DataGrid.HorizontalGridLinesBrush><SolidColorBrush Color="{DynamicResource {x:Static SystemColors.ControlLightColorKey}}" /></DataGrid.HorizontalGridLinesBrush><DataGrid.Columns><DataGridTemplateColumn MinWidth="26" IsReadOnly="False"><DataGridTemplateColumn.CellTemplate><DataTemplate><CheckBoxHorizontalAlignment="Left"VerticalAlignment="Center"IsChecked="{Binding Commit, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" /></DataTemplate></DataGridTemplateColumn.CellTemplate></DataGridTemplateColumn><DataGridTemplateColumnHeader="{x:Static l10n:VBASyncResources.MWChangeType}"IsReadOnly="True"KeyboardNavigation.IsTabStop="False"><DataGridTemplateColumn.CellTemplate><DataTemplate><TextBlockKeyboardNavigation.IsTabStop="False"Text="{Binding ChangeType, Converter={x:Static local:WpfStatic.ChangeTypeToDescriptionOneWay}}"TextTrimming="CharacterEllipsis" /></DataTemplate></DataGridTemplateColumn.CellTemplate></DataGridTemplateColumn><DataGridTemplateColumnMinWidth="120"Header="{x:Static l10n:VBASyncResources.MWModule}"IsReadOnly="True"KeyboardNavigation.IsTabStop="False"><DataGridTemplateColumn.CellTemplate><DataTemplate><StackPanel Orientation="Horizontal"><Image KeyboardNavigation.IsTabStop="False" Source="{Binding ModuleType, Converter={StaticResource IconConverter}}" /><TextBlockMargin="4,0,0,0"Padding="0"KeyboardNavigation.IsTabStop="False"Text="{Binding ModuleName}"TextTrimming="CharacterEllipsis" /></StackPanel></DataTemplate></DataGridTemplateColumn.CellTemplate></DataGridTemplateColumn><DataGridTemplateColumnWidth="*"Header="{x:Static l10n:VBASyncResources.MWDescription}"IsReadOnly="True"KeyboardNavigation.IsTabStop="False"><DataGridTemplateColumn.CellTemplate><DataTemplate><TextBlockKeyboardNavigation.IsTabStop="False"Text="{Binding Description}"TextTrimming="CharacterEllipsis" /></DataTemplate></DataGridTemplateColumn.CellTemplate></DataGridTemplateColumn></DataGrid.Columns></DataGrid><CheckBoxx:Name="IncludeAllBox"Grid.Row="1"Margin="8,29,0,0"HorizontalAlignment="Left"VerticalAlignment="Top"Click="IncludeAllBox_Click" /><Grid Grid.Row="3" Style="{StaticResource Level1}"><Grid.ColumnDefinitions><ColumnDefinition Width="3*" /><ColumnDefinition Width="*" /><ColumnDefinition Width="auto" /></Grid.ColumnDefinitions><Buttonx:Name="RefreshButton"Grid.ColumnSpan="2"MinWidth="75"HorizontalAlignment="Left"Click="RefreshButton_Click"Content="{x:Static l10n:VBASyncResources.MWRefreshAction}"Visibility="Visible" /><StackPanel Grid.Column="2" Orientation="Horizontal"><StackPanel.Resources><Style TargetType="{x:Type Button}"><Setter Property="Margin" Value="4,0,0,0" /></Style></StackPanel.Resources><Buttonx:Name="ApplyButton"MinWidth="75"Click="ApplyButton_Click"Content="{x:Static l10n:VBASyncResources.ApplyAction}"IsEnabled="False" /><Buttonx:Name="CancelButton"MinWidth="75"Click="CancelButton_Click"Content="{x:Static l10n:VBASyncResources.CancelAction}" /><Buttonx:Name="OkButton"Height="20"MinWidth="75"VerticalAlignment="Top"Click="OkButton_Click"Content="{x:Static l10n:VBASyncResources.OKAction}"IsDefault="True" /></StackPanel></Grid></Grid></DockPanel></Window>