Added max list size circumvention for file transfers between sites.
This commit is contained in:
@@ -0,0 +1,39 @@
|
||||
<UserControl x:Class="SharepointToolbox.Views.Common.InfoButton"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
x:Name="Root"
|
||||
Width="18" Height="18"
|
||||
VerticalAlignment="Center">
|
||||
<Grid>
|
||||
<Button x:Name="Btn"
|
||||
Style="{StaticResource InfoButtonStyle}"
|
||||
Click="Btn_Click" />
|
||||
<Popup x:Name="InfoPopup"
|
||||
StaysOpen="False"
|
||||
AllowsTransparency="True"
|
||||
Placement="Bottom"
|
||||
PlacementTarget="{Binding ElementName=Btn}"
|
||||
MaxWidth="340">
|
||||
<Border Background="{DynamicResource SurfaceBrush}"
|
||||
BorderBrush="{DynamicResource BorderStrongBrush}"
|
||||
BorderThickness="1"
|
||||
CornerRadius="8"
|
||||
Padding="14,10">
|
||||
<Border.Effect>
|
||||
<DropShadowEffect ShadowDepth="2" BlurRadius="10" Opacity="0.18" Color="#000000" />
|
||||
</Border.Effect>
|
||||
<StackPanel MaxWidth="310">
|
||||
<TextBlock Text="{Binding Title, ElementName=Root}"
|
||||
FontWeight="SemiBold"
|
||||
FontSize="13"
|
||||
Margin="0,0,0,6"
|
||||
TextWrapping="Wrap" />
|
||||
<TextBlock Text="{Binding Body, ElementName=Root}"
|
||||
FontSize="12"
|
||||
TextWrapping="Wrap"
|
||||
LineHeight="18" />
|
||||
</StackPanel>
|
||||
</Border>
|
||||
</Popup>
|
||||
</Grid>
|
||||
</UserControl>
|
||||
@@ -0,0 +1,36 @@
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
|
||||
namespace SharepointToolbox.Views.Common
|
||||
{
|
||||
public partial class InfoButton : UserControl
|
||||
{
|
||||
public static readonly DependencyProperty TitleProperty =
|
||||
DependencyProperty.Register(nameof(Title), typeof(string), typeof(InfoButton), new PropertyMetadata(string.Empty));
|
||||
|
||||
public static readonly DependencyProperty BodyProperty =
|
||||
DependencyProperty.Register(nameof(Body), typeof(string), typeof(InfoButton), new PropertyMetadata(string.Empty));
|
||||
|
||||
public string Title
|
||||
{
|
||||
get => (string)GetValue(TitleProperty);
|
||||
set => SetValue(TitleProperty, value);
|
||||
}
|
||||
|
||||
public string Body
|
||||
{
|
||||
get => (string)GetValue(BodyProperty);
|
||||
set => SetValue(BodyProperty, value);
|
||||
}
|
||||
|
||||
public InfoButton()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
private void Btn_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
InfoPopup.IsOpen = !InfoPopup.IsOpen;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -8,8 +8,13 @@
|
||||
<ScrollViewer DockPanel.Dock="Left" Width="240" Margin="0,0,10,0"
|
||||
VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Disabled">
|
||||
<StackPanel>
|
||||
<Button Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[bulkmembers.import]}"
|
||||
Command="{Binding ImportCsvCommand}" Margin="0,0,0,5" />
|
||||
<StackPanel Orientation="Horizontal" Margin="0,0,0,5">
|
||||
<Button Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[bulkmembers.import]}"
|
||||
Command="{Binding ImportCsvCommand}" />
|
||||
<common:InfoButton Margin="6,0,0,0"
|
||||
Title="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.bulkmembers.title]}"
|
||||
Body="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.bulkmembers.body]}" />
|
||||
</StackPanel>
|
||||
<Button Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[bulkmembers.example]}"
|
||||
Command="{Binding LoadExampleCommand}" Margin="0,0,0,10" />
|
||||
|
||||
@@ -41,8 +46,8 @@
|
||||
<Style TargetType="DataGridRow">
|
||||
<Style.Triggers>
|
||||
<DataTrigger Binding="{Binding IsValid}" Value="False">
|
||||
<Setter Property="Background" Value="#FFFDE0E0" />
|
||||
<Setter Property="Foreground" Value="#FFB00020" />
|
||||
<Setter Property="Background" Value="{DynamicResource ErrorRowBgBrush}" />
|
||||
<Setter Property="Foreground" Value="{DynamicResource ErrorRowFgBrush}" />
|
||||
</DataTrigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
|
||||
@@ -7,8 +7,13 @@
|
||||
<ScrollViewer DockPanel.Dock="Left" Width="240" Margin="0,0,10,0"
|
||||
VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Disabled">
|
||||
<StackPanel>
|
||||
<Button Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[bulksites.import]}"
|
||||
Command="{Binding ImportCsvCommand}" Margin="0,0,0,5" />
|
||||
<StackPanel Orientation="Horizontal" Margin="0,0,0,5">
|
||||
<Button Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[bulksites.import]}"
|
||||
Command="{Binding ImportCsvCommand}" />
|
||||
<common:InfoButton Margin="6,0,0,0"
|
||||
Title="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.bulksites.title]}"
|
||||
Body="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.bulksites.body]}" />
|
||||
</StackPanel>
|
||||
<Button Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[bulksites.example]}"
|
||||
Command="{Binding LoadExampleCommand}" Margin="0,0,0,10" />
|
||||
|
||||
@@ -39,8 +44,8 @@
|
||||
<Style TargetType="DataGridRow">
|
||||
<Style.Triggers>
|
||||
<DataTrigger Binding="{Binding IsValid}" Value="False">
|
||||
<Setter Property="Background" Value="#FFFDE0E0" />
|
||||
<Setter Property="Foreground" Value="#FFB00020" />
|
||||
<Setter Property="Background" Value="{DynamicResource ErrorRowBgBrush}" />
|
||||
<Setter Property="Foreground" Value="{DynamicResource ErrorRowFgBrush}" />
|
||||
</DataTrigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
<UserControl x:Class="SharepointToolbox.Views.Tabs.DuplicatesView"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:loc="clr-namespace:SharepointToolbox.Localization">
|
||||
xmlns:loc="clr-namespace:SharepointToolbox.Localization"
|
||||
xmlns:common="clr-namespace:SharepointToolbox.Views.Common">
|
||||
<DockPanel LastChildFill="True">
|
||||
<!-- Options panel -->
|
||||
<ScrollViewer DockPanel.Dock="Left" Width="240" VerticalScrollBarVisibility="Auto" Margin="8,8,4,8">
|
||||
@@ -15,7 +16,15 @@
|
||||
</StackPanel>
|
||||
</GroupBox>
|
||||
|
||||
<GroupBox Header="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[grp.dup.criteria]}" Margin="0,0,0,8">
|
||||
<GroupBox Margin="0,0,0,8">
|
||||
<GroupBox.Header>
|
||||
<StackPanel Orientation="Horizontal" VerticalAlignment="Center">
|
||||
<TextBlock Text="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[grp.dup.criteria]}" VerticalAlignment="Center" />
|
||||
<common:InfoButton Margin="6,0,0,0"
|
||||
Title="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.dup.criteria.title]}"
|
||||
Body="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.dup.criteria.body]}" />
|
||||
</StackPanel>
|
||||
</GroupBox.Header>
|
||||
<StackPanel Margin="4">
|
||||
<TextBlock Text="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[lbl.dup.note]}"
|
||||
TextWrapping="Wrap" FontSize="11" Foreground="{DynamicResource TextMutedBrush}" Margin="0,0,0,6" />
|
||||
|
||||
@@ -12,8 +12,13 @@
|
||||
Margin="0,0,0,3" />
|
||||
<TextBox Text="{Binding LibraryTitle, UpdateSourceTrigger=PropertyChanged}" Margin="0,0,0,10" />
|
||||
|
||||
<Button Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[folderstruct.import]}"
|
||||
Command="{Binding ImportCsvCommand}" Margin="0,0,0,5" />
|
||||
<StackPanel Orientation="Horizontal" Margin="0,0,0,5">
|
||||
<Button Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[folderstruct.import]}"
|
||||
Command="{Binding ImportCsvCommand}" />
|
||||
<common:InfoButton Margin="6,0,0,0"
|
||||
Title="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.folderstruct.title]}"
|
||||
Body="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.folderstruct.body]}" />
|
||||
</StackPanel>
|
||||
<Button Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[folderstruct.example]}"
|
||||
Command="{Binding LoadExampleCommand}" Margin="0,0,0,10" />
|
||||
|
||||
|
||||
@@ -34,8 +34,13 @@
|
||||
<!-- Checkboxes -->
|
||||
<CheckBox Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[chk.scan.folders]}"
|
||||
IsChecked="{Binding ScanFolders}" Margin="0,0,0,4" />
|
||||
<CheckBox Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[chk.inherited.perms]}"
|
||||
IsChecked="{Binding IncludeInherited}" Margin="0,0,0,4" />
|
||||
<StackPanel Orientation="Horizontal" Margin="0,0,0,4">
|
||||
<CheckBox Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[chk.inherited.perms]}"
|
||||
IsChecked="{Binding IncludeInherited}" VerticalAlignment="Center" />
|
||||
<common:InfoButton Margin="6,0,0,0"
|
||||
Title="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.perm.inherited.title]}"
|
||||
Body="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.perm.inherited.body]}" />
|
||||
</StackPanel>
|
||||
<CheckBox Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[chk.recursive]}"
|
||||
IsChecked="{Binding IncludeSubsites}" Margin="0,0,0,8" />
|
||||
|
||||
@@ -57,8 +62,13 @@
|
||||
<StackPanel>
|
||||
|
||||
<!-- Simplified Mode toggle -->
|
||||
<CheckBox Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[chk.simplified.mode]}"
|
||||
IsChecked="{Binding IsSimplifiedMode}" Margin="0,0,0,8" />
|
||||
<StackPanel Orientation="Horizontal" Margin="0,0,0,8">
|
||||
<CheckBox Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[chk.simplified.mode]}"
|
||||
IsChecked="{Binding IsSimplifiedMode}" VerticalAlignment="Center" />
|
||||
<common:InfoButton Margin="6,0,0,0"
|
||||
Title="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.perm.simplified.title]}"
|
||||
Body="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.perm.simplified.body]}" />
|
||||
</StackPanel>
|
||||
|
||||
<!-- Detail Level radio buttons (only enabled when simplified mode is on) -->
|
||||
<TextBlock Text="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[lbl.detail.level]}"
|
||||
@@ -90,10 +100,46 @@
|
||||
<GroupBox Header="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[audit.grp.export]}"
|
||||
DockPanel.Dock="Top" Margin="0,0,0,8" Padding="8">
|
||||
<StackPanel>
|
||||
<CheckBox Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[chk.merge.permissions]}"
|
||||
IsChecked="{Binding MergePermissions}" Margin="0,0,0,4" />
|
||||
<CheckBox Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[chk.hide.system.group.raw]}"
|
||||
IsChecked="{Binding HideSystemGroupRaw}" />
|
||||
<StackPanel Orientation="Horizontal" Margin="0,0,0,4">
|
||||
<CheckBox Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[chk.merge.permissions]}"
|
||||
IsChecked="{Binding MergePermissions}" VerticalAlignment="Center" />
|
||||
<common:InfoButton Margin="6,0,0,0"
|
||||
Title="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.perm.merge.title]}"
|
||||
Body="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.perm.merge.body]}" />
|
||||
</StackPanel>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<CheckBox Grid.Column="0" IsChecked="{Binding HideSystemGroupRaw}" VerticalAlignment="Top">
|
||||
<TextBlock Text="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[chk.hide.system.group.raw]}"
|
||||
TextWrapping="Wrap" MaxWidth="210" />
|
||||
</CheckBox>
|
||||
<common:InfoButton Grid.Column="1" Margin="6,0,0,0" VerticalAlignment="Top"
|
||||
Title="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.perm.hidesys.title]}"
|
||||
Body="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.perm.hidesys.body]}" />
|
||||
</Grid>
|
||||
<StackPanel Orientation="Horizontal" Margin="0,6,0,0">
|
||||
<CheckBox Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[chk.exclude.sharing.links]}"
|
||||
IsChecked="{Binding ExcludeSharingLinks}" VerticalAlignment="Center" />
|
||||
<common:InfoButton Margin="6,0,0,0"
|
||||
Title="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.perm.excl.sharing.title]}"
|
||||
Body="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.perm.excl.sharing.body]}" />
|
||||
</StackPanel>
|
||||
<Grid Margin="0,4,0,0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<CheckBox Grid.Column="0" IsChecked="{Binding ExcludeSystemGroups}" VerticalAlignment="Top">
|
||||
<TextBlock Text="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[chk.exclude.system.groups]}"
|
||||
TextWrapping="Wrap" MaxWidth="210" />
|
||||
</CheckBox>
|
||||
<common:InfoButton Grid.Column="1" Margin="6,0,0,0" VerticalAlignment="Top"
|
||||
Title="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.perm.excl.system.title]}"
|
||||
Body="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.perm.excl.system.body]}" />
|
||||
</Grid>
|
||||
</StackPanel>
|
||||
</GroupBox>
|
||||
|
||||
@@ -113,7 +159,12 @@
|
||||
Command="{Binding CancelCommand}"
|
||||
Margin="0,0,0,4" Padding="6,3" />
|
||||
</Grid>
|
||||
<Label Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[export.split.label]}" Padding="0,2" />
|
||||
<StackPanel Orientation="Horizontal" Margin="0,0,0,2">
|
||||
<Label Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[export.split.label]}" Padding="0,2" VerticalAlignment="Center" />
|
||||
<common:InfoButton Margin="4,0,0,0"
|
||||
Title="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.perm.splitmode.title]}"
|
||||
Body="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.perm.splitmode.body]}" />
|
||||
</StackPanel>
|
||||
<ComboBox SelectedIndex="{Binding SplitModeIndex}" Height="24" Margin="0,0,0,4">
|
||||
<ComboBoxItem Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[export.split.single]}" />
|
||||
<ComboBoxItem Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[export.split.bySite]}" />
|
||||
|
||||
@@ -1,19 +1,32 @@
|
||||
<UserControl x:Class="SharepointToolbox.Views.Tabs.SearchView"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:loc="clr-namespace:SharepointToolbox.Localization">
|
||||
xmlns:loc="clr-namespace:SharepointToolbox.Localization"
|
||||
xmlns:common="clr-namespace:SharepointToolbox.Views.Common">
|
||||
<DockPanel LastChildFill="True">
|
||||
<!-- Filters panel -->
|
||||
<ScrollViewer DockPanel.Dock="Left" Width="260" VerticalScrollBarVisibility="Auto" Margin="8,8,4,8">
|
||||
<StackPanel>
|
||||
<GroupBox Header="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[grp.search.filters]}"
|
||||
Margin="0,0,0,8">
|
||||
<GroupBox Margin="0,0,0,8">
|
||||
<GroupBox.Header>
|
||||
<StackPanel Orientation="Horizontal" VerticalAlignment="Center">
|
||||
<TextBlock Text="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[grp.search.filters]}" VerticalAlignment="Center" />
|
||||
<common:InfoButton Margin="6,0,0,0"
|
||||
Title="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.search.title]}"
|
||||
Body="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.search.body]}" />
|
||||
</StackPanel>
|
||||
</GroupBox.Header>
|
||||
<StackPanel Margin="4">
|
||||
<Label Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[lbl.extensions]}" Padding="0,0,0,2" />
|
||||
<TextBox Text="{Binding Extensions, UpdateSourceTrigger=PropertyChanged}" Height="26"
|
||||
ToolTip="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[ph.extensions]}" Margin="0,0,0,6" />
|
||||
|
||||
<Label Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[lbl.regex]}" Padding="0,0,0,2" />
|
||||
<StackPanel Orientation="Horizontal" Margin="0,0,0,2">
|
||||
<Label Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[lbl.regex]}" Padding="0" VerticalAlignment="Center" />
|
||||
<common:InfoButton Margin="4,0,0,0"
|
||||
Title="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.search.regex.title]}"
|
||||
Body="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.search.regex.body]}" />
|
||||
</StackPanel>
|
||||
<TextBox Text="{Binding Regex, UpdateSourceTrigger=PropertyChanged}" Height="26"
|
||||
ToolTip="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[ph.regex]}" Margin="0,0,0,6" />
|
||||
|
||||
|
||||
@@ -3,11 +3,12 @@
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:loc="clr-namespace:SharepointToolbox.Localization"
|
||||
xmlns:conv="clr-namespace:SharepointToolbox.Views.Converters"
|
||||
xmlns:lvc="clr-namespace:LiveChartsCore.SkiaSharpView.WPF;assembly=LiveChartsCore.SkiaSharpView.WPF">
|
||||
xmlns:lvc="clr-namespace:LiveChartsCore.SkiaSharpView.WPF;assembly=LiveChartsCore.SkiaSharpView.WPF"
|
||||
xmlns:common="clr-namespace:SharepointToolbox.Views.Common">
|
||||
<DockPanel LastChildFill="True">
|
||||
<!-- Options panel -->
|
||||
<ScrollViewer DockPanel.Dock="Left" Width="240" VerticalScrollBarVisibility="Auto"
|
||||
Margin="8,8,4,8">
|
||||
HorizontalScrollBarVisibility="Disabled" Margin="8,8,4,8">
|
||||
<StackPanel>
|
||||
|
||||
<!-- Scan options group -->
|
||||
@@ -37,10 +38,20 @@
|
||||
<GroupBox Header="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[grp.scan.sources]}"
|
||||
Margin="0,0,0,8">
|
||||
<StackPanel Margin="4">
|
||||
<CheckBox Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[chk.scan.hidden]}"
|
||||
IsChecked="{Binding ScanHiddenLibraries}" Margin="0,2" />
|
||||
<CheckBox Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[chk.scan.preservation]}"
|
||||
IsChecked="{Binding ScanPreservationHold}" Margin="0,2" />
|
||||
<StackPanel Orientation="Horizontal" Margin="0,2">
|
||||
<CheckBox Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[chk.scan.hidden]}"
|
||||
IsChecked="{Binding ScanHiddenLibraries}" VerticalAlignment="Center" />
|
||||
<common:InfoButton Margin="6,0,0,0"
|
||||
Title="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.storage.hidden.title]}"
|
||||
Body="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.storage.hidden.body]}" />
|
||||
</StackPanel>
|
||||
<StackPanel Orientation="Horizontal" Margin="0,2">
|
||||
<CheckBox Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[chk.scan.preservation]}"
|
||||
IsChecked="{Binding ScanPreservationHold}" VerticalAlignment="Center" />
|
||||
<common:InfoButton Margin="6,0,0,0"
|
||||
Title="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.storage.preservation.title]}"
|
||||
Body="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.storage.preservation.body]}" />
|
||||
</StackPanel>
|
||||
<CheckBox Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[chk.scan.attachments]}"
|
||||
IsChecked="{Binding ScanListAttachments}" Margin="0,2" />
|
||||
<CheckBox Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[chk.scan.recyclebin]}"
|
||||
@@ -65,8 +76,10 @@
|
||||
<CheckBox Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[chk.show.subsites]}"
|
||||
IsChecked="{Binding ShowSubsites}" Margin="0,2" />
|
||||
<Separator Margin="0,4" />
|
||||
<CheckBox Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[chk.combine.recyclebin]}"
|
||||
IsChecked="{Binding CombineRecycleBinStages}" Margin="0,2" />
|
||||
<CheckBox IsChecked="{Binding CombineRecycleBinStages}" Margin="0,2">
|
||||
<TextBlock Text="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[chk.combine.recyclebin]}"
|
||||
TextWrapping="Wrap" MaxWidth="195" />
|
||||
</CheckBox>
|
||||
</StackPanel>
|
||||
</GroupBox>
|
||||
|
||||
|
||||
@@ -1,15 +1,23 @@
|
||||
<UserControl x:Class="SharepointToolbox.Views.Tabs.TemplatesView"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:loc="clr-namespace:SharepointToolbox.Localization">
|
||||
xmlns:loc="clr-namespace:SharepointToolbox.Localization"
|
||||
xmlns:common="clr-namespace:SharepointToolbox.Views.Common">
|
||||
<DockPanel Margin="10">
|
||||
<!-- Left panel: Capture and Apply -->
|
||||
<ScrollViewer DockPanel.Dock="Left" Width="320" Margin="0,0,10,0"
|
||||
VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Disabled">
|
||||
<StackPanel>
|
||||
<!-- Capture Section -->
|
||||
<GroupBox Header="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[templates.capture]}"
|
||||
Margin="0,0,0,10">
|
||||
<GroupBox Margin="0,0,0,10">
|
||||
<GroupBox.Header>
|
||||
<StackPanel Orientation="Horizontal" VerticalAlignment="Center">
|
||||
<TextBlock Text="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[templates.capture]}" VerticalAlignment="Center" />
|
||||
<common:InfoButton Margin="6,0,0,0"
|
||||
Title="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.templates.capture.title]}"
|
||||
Body="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.templates.capture.body]}" />
|
||||
</StackPanel>
|
||||
</GroupBox.Header>
|
||||
<StackPanel Margin="5">
|
||||
<TextBlock Text="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[templates.name]}"
|
||||
Margin="0,0,0,3" />
|
||||
@@ -35,8 +43,15 @@
|
||||
</GroupBox>
|
||||
|
||||
<!-- Apply Section -->
|
||||
<GroupBox Header="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[templates.apply]}"
|
||||
Margin="0,0,0,10">
|
||||
<GroupBox Margin="0,0,0,10">
|
||||
<GroupBox.Header>
|
||||
<StackPanel Orientation="Horizontal" VerticalAlignment="Center">
|
||||
<TextBlock Text="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[templates.apply]}" VerticalAlignment="Center" />
|
||||
<common:InfoButton Margin="6,0,0,0"
|
||||
Title="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.templates.apply.title]}"
|
||||
Body="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.templates.apply.body]}" />
|
||||
</StackPanel>
|
||||
</GroupBox.Header>
|
||||
<StackPanel Margin="5">
|
||||
<TextBlock Text="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[templates.newtitle]}"
|
||||
Margin="0,0,0,3" />
|
||||
|
||||
@@ -24,14 +24,24 @@
|
||||
<TextBlock Foreground="{DynamicResource AccentBrush}" FontStyle="Italic" FontSize="11"
|
||||
Text="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[transfer.text.files_selected]}" />
|
||||
</StackPanel>
|
||||
<CheckBox Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[transfer.chk.include_source]}"
|
||||
IsChecked="{Binding IncludeSourceFolder}"
|
||||
Margin="0,6,0,0"
|
||||
ToolTip="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[transfer.chk.include_source.tooltip]}" />
|
||||
<CheckBox Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[transfer.chk.copy_contents]}"
|
||||
IsChecked="{Binding CopyFolderContents}"
|
||||
Margin="0,4,0,0"
|
||||
ToolTip="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[transfer.chk.copy_contents.tooltip]}" />
|
||||
<StackPanel Orientation="Horizontal" Margin="0,6,0,0">
|
||||
<CheckBox Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[transfer.chk.include_source]}"
|
||||
IsChecked="{Binding IncludeSourceFolder}"
|
||||
VerticalAlignment="Center"
|
||||
ToolTip="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[transfer.chk.include_source.tooltip]}" />
|
||||
<common:InfoButton Margin="6,0,0,0"
|
||||
Title="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.transfer.incsource.title]}"
|
||||
Body="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.transfer.incsource.body]}" />
|
||||
</StackPanel>
|
||||
<StackPanel Orientation="Horizontal" Margin="0,4,0,0">
|
||||
<CheckBox Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[transfer.chk.copy_contents]}"
|
||||
IsChecked="{Binding CopyFolderContents}"
|
||||
VerticalAlignment="Center"
|
||||
ToolTip="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[transfer.chk.copy_contents.tooltip]}" />
|
||||
<common:InfoButton Margin="6,0,0,0"
|
||||
Title="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.transfer.copycontent.title]}"
|
||||
Body="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.transfer.copycontent.body]}" />
|
||||
</StackPanel>
|
||||
</StackPanel>
|
||||
</GroupBox>
|
||||
|
||||
@@ -61,8 +71,15 @@
|
||||
</GroupBox>
|
||||
|
||||
<!-- Conflict Policy -->
|
||||
<GroupBox Header="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[transfer.conflict]}"
|
||||
Margin="0,0,0,10">
|
||||
<GroupBox Margin="0,0,0,10">
|
||||
<GroupBox.Header>
|
||||
<StackPanel Orientation="Horizontal" VerticalAlignment="Center">
|
||||
<TextBlock Text="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[transfer.conflict]}" VerticalAlignment="Center" />
|
||||
<common:InfoButton Margin="6,0,0,0"
|
||||
Title="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.transfer.conflict.title]}"
|
||||
Body="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.transfer.conflict.body]}" />
|
||||
</StackPanel>
|
||||
</GroupBox.Header>
|
||||
<ComboBox SelectedIndex="0" x:Name="ConflictCombo" SelectionChanged="ConflictCombo_SelectionChanged">
|
||||
<ComboBoxItem Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[transfer.conflict.skip]}" />
|
||||
<ComboBoxItem Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[transfer.conflict.overwrite]}" />
|
||||
|
||||
@@ -22,9 +22,12 @@
|
||||
<StackPanel DockPanel.Dock="Top" Orientation="Horizontal" Margin="0,0,0,8">
|
||||
<RadioButton Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[audit.mode.search]}"
|
||||
IsChecked="{Binding IsBrowseMode, Converter={StaticResource InverseBoolConverter}}"
|
||||
Margin="0,0,12,0" />
|
||||
Margin="0,0,12,0" VerticalAlignment="Center" />
|
||||
<RadioButton Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[audit.mode.browse]}"
|
||||
IsChecked="{Binding IsBrowseMode}" />
|
||||
IsChecked="{Binding IsBrowseMode}" VerticalAlignment="Center" />
|
||||
<common:InfoButton Margin="8,0,0,0"
|
||||
Title="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.audit.mode.title]}"
|
||||
Body="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.audit.mode.body]}" />
|
||||
</StackPanel>
|
||||
|
||||
<!-- SEARCH MODE PANEL (visible when IsBrowseMode=false) -->
|
||||
@@ -201,8 +204,15 @@
|
||||
</StackPanel>
|
||||
|
||||
<!-- Scan Options (always visible) -->
|
||||
<GroupBox Header="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[audit.grp.options]}"
|
||||
DockPanel.Dock="Top" Margin="0,0,0,8" Padding="8">
|
||||
<GroupBox DockPanel.Dock="Top" Margin="0,0,0,8" Padding="8">
|
||||
<GroupBox.Header>
|
||||
<StackPanel Orientation="Horizontal" VerticalAlignment="Center">
|
||||
<TextBlock Text="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[audit.grp.options]}" VerticalAlignment="Center" />
|
||||
<common:InfoButton Margin="6,0,0,0"
|
||||
Title="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.audit.vs.perms.title]}"
|
||||
Body="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.audit.vs.perms.body]}" />
|
||||
</StackPanel>
|
||||
</GroupBox.Header>
|
||||
<StackPanel>
|
||||
<CheckBox Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[chk.inherited.perms]}"
|
||||
IsChecked="{Binding IncludeInherited}" Margin="0,0,0,4" />
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
<UserControl x:Class="SharepointToolbox.Views.Tabs.VersionCleanupView"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:loc="clr-namespace:SharepointToolbox.Localization">
|
||||
xmlns:loc="clr-namespace:SharepointToolbox.Localization"
|
||||
xmlns:common="clr-namespace:SharepointToolbox.Views.Common">
|
||||
<DockPanel LastChildFill="True">
|
||||
<ScrollViewer DockPanel.Dock="Left" Width="280" VerticalScrollBarVisibility="Auto" Margin="8,8,4,8">
|
||||
<StackPanel>
|
||||
@@ -17,8 +18,15 @@
|
||||
</StackPanel>
|
||||
</GroupBox>
|
||||
|
||||
<GroupBox Header="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[versions.grp.policy]}"
|
||||
Margin="0,0,0,8">
|
||||
<GroupBox Margin="0,0,0,8">
|
||||
<GroupBox.Header>
|
||||
<StackPanel Orientation="Horizontal" VerticalAlignment="Center">
|
||||
<TextBlock Text="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[versions.grp.policy]}" VerticalAlignment="Center" />
|
||||
<common:InfoButton Margin="6,0,0,0"
|
||||
Title="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.versions.policy.title]}"
|
||||
Body="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.versions.policy.body]}" />
|
||||
</StackPanel>
|
||||
</GroupBox.Header>
|
||||
<StackPanel Margin="4">
|
||||
<StackPanel Orientation="Horizontal" Margin="0,2">
|
||||
<Label Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[versions.lbl.keepLast]}"
|
||||
@@ -26,10 +34,20 @@
|
||||
<TextBox Text="{Binding KeepLast, UpdateSourceTrigger=PropertyChanged}"
|
||||
Width="50" Height="22" VerticalAlignment="Center" />
|
||||
</StackPanel>
|
||||
<CheckBox Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[versions.chk.keepFirst]}"
|
||||
IsChecked="{Binding KeepFirstVersion}" Margin="0,4,0,2" />
|
||||
<CheckBox Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[versions.chk.confirm]}"
|
||||
IsChecked="{Binding ConfirmDelete}" Margin="0,4,0,2" />
|
||||
<StackPanel Orientation="Horizontal" Margin="0,4,0,2">
|
||||
<CheckBox Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[versions.chk.keepFirst]}"
|
||||
IsChecked="{Binding KeepFirstVersion}" VerticalAlignment="Center" />
|
||||
<common:InfoButton Margin="6,0,0,0"
|
||||
Title="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.versions.keepfirst.title]}"
|
||||
Body="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.versions.keepfirst.body]}" />
|
||||
</StackPanel>
|
||||
<StackPanel Orientation="Horizontal" Margin="0,4,0,2">
|
||||
<CheckBox Content="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[versions.chk.confirm]}"
|
||||
IsChecked="{Binding ConfirmDelete}" VerticalAlignment="Center" />
|
||||
<common:InfoButton Margin="6,0,0,0"
|
||||
Title="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.versions.confirm.title]}"
|
||||
Body="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[help.versions.confirm.body]}" />
|
||||
</StackPanel>
|
||||
<TextBlock Text="{Binding Source={x:Static loc:TranslationSource.Instance}, Path=[versions.note]}"
|
||||
TextWrapping="Wrap" FontSize="11" Foreground="{DynamicResource TextMutedBrush}"
|
||||
Margin="0,6,0,0" />
|
||||
|
||||
Reference in New Issue
Block a user