Files
ShrlAlgoToolkit/WPFluent.Gallery/Views/Pages/OpSystemPage.xaml
2025-04-24 20:56:44 +08:00

243 lines
10 KiB
XML

<Page
Foreground="{DynamicResource TextFillColorPrimaryBrush}"
controls:PageControlDocumentation.Show="False"
d:DataContext="{d:DesignInstance pages:OpSystemPage,
IsDesignTimeCreatable=False}"
d:DesignHeight="450"
d:DesignWidth="800"
mc:Ignorable="d"
ui:Design.Background="{DynamicResource ApplicationBackgroundBrush}"
ui:Design.Foreground="{DynamicResource TextFillColorPrimaryBrush}"
x:Class="WPFluent.Gallery.Views.Pages.OpSystemPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:controls="clr-namespace:WPFluent.Gallery.Controls"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:pages="clr-namespace:WPFluent.Gallery.Views.Pages"
xmlns:ui="https://github.com/ShrlAlgo/WPFluent"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<ui:StackPanel Spacing="5">
<GroupBox
Header="Copy text to the clipboard"
Margin="0">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Grid Grid.Row="0" >
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<ui:Button
Command="{Binding ViewModel.CopyTextToClipboardCommand}"
Content="Copy Text to the Clipboard"
Grid.Column="0" />
<ui:TextBlock
Grid.Column="1"
Margin="8,0,0,0"
Text="Text copied to clipboard!"
VerticalAlignment="Center"
Visibility="{Binding ViewModel.TextCopiedVisibility}" />
</Grid>
<ui:TextBox
Grid.Row="1"
MinLines="4"
Text="{Binding ViewModel.TextToCopy}" />
</Grid>
</GroupBox>
<GroupBox
Header="Paste text from the clipboard"
>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<ui:Button
Command="{Binding ViewModel.ParseTextFromClipboardCommand}"
Content="Paste Text from the Clipboard"
Grid.Row="0"
Margin="0,0,0,16" />
<ui:TextBlock
Grid.Row="1"
Text="Clipboard:"
TextDecorations="Underline" />
<ui:TextBlock Grid.Row="2" Text="{Binding ViewModel.ClipboardContent}" />
</Grid>
</GroupBox>
<GroupBox
Header="Pick a single file"
Margin="0">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<ui:Button
Command="{Binding ViewModel.OpenFileCommand}"
Content="Open a file"
Grid.Column="0" />
<StackPanel
Grid.Column="1"
Margin="16,0,0,0"
Orientation="Horizontal"
VerticalAlignment="Center"
Visibility="{Binding ViewModel.OpenedFilePathVisibility}">
<ui:TextBlock Text="Picked file:" />
<ui:TextBlock
FontTypography="BodyStrong"
Margin="4,0,0,0"
Text="{Binding ViewModel.OpenedFilePath}" />
</StackPanel>
</Grid>
</GroupBox>
<GroupBox
Header="Pick a specific file type"
Margin="0,32,0,0">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<ui:Button
Command="{Binding ViewModel.OpenPictureCommand}"
Content="Open a picture"
Grid.Column="0" />
<StackPanel
Grid.Column="1"
Margin="16,0,0,0"
Orientation="Horizontal"
VerticalAlignment="Center"
Visibility="{Binding ViewModel.OpenedPicturePathVisibility}">
<ui:TextBlock Text="Picked photo:" />
<ui:TextBlock
FontTypography="BodyStrong"
Margin="4,0,0,0"
Text="{Binding ViewModel.OpenedPicturePath}" />
</StackPanel>
</Grid>
</GroupBox>
<GroupBox
Header="Pick multiple files"
Margin="0,32,0,0">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<ui:Button
Command="{Binding ViewModel.OpenMultipleCommand}"
Content="Open multiple files"
Grid.Column="0" />
<StackPanel
Grid.Column="1"
Margin="16,0,0,0"
VerticalAlignment="Center"
Visibility="{Binding ViewModel.OpenedMultiplePathVisibility}">
<ui:TextBlock Text="Picked files:" />
<ui:TextBlock FontTypography="BodyStrong" Text="{Binding ViewModel.OpenedMultiplePath}" />
</StackPanel>
</Grid>
</GroupBox>
<GroupBox
Header="Pick a folder"
Margin="0,32,0,0">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<ui:Button
Command="{Binding ViewModel.OpenFolderCommand}"
Content="Open a folder"
Grid.Column="0" />
<StackPanel
Grid.Column="1"
Margin="16,0,0,0"
VerticalAlignment="Center"
Visibility="{Binding ViewModel.OpenedFolderPathVisibility}">
<ui:TextBlock Text="Picked folder:" />
<ui:TextBlock FontTypography="BodyStrong" Text="{Binding ViewModel.OpenedFolderPath}" />
</StackPanel>
</Grid>
</GroupBox>
<GroupBox
Header="Save a file"
Margin="0,32,0,0">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<ui:TextBlock Grid.Row="0" Text="Prompt the user to save a file." />
<Grid Grid.Row="1" Margin="0,16,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<ui:TextBlock
Grid.Column="0"
MinWidth="80"
Text="File name:"
VerticalAlignment="Center" />
<ui:TextBox
Grid.Column="1"
MinWidth="180"
PlaceholderText="Type your file name here..."
Text="{Binding ViewModel.FileToSaveName}" />
<ui:TextBlock
Grid.Column="2"
Margin="4,0,0,0"
Text=".txt"
VerticalAlignment="Center" />
</Grid>
<Grid Grid.Row="2" Margin="0,8,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<ui:TextBlock
Grid.Column="0"
MinWidth="80"
Text="File content:"
VerticalAlignment="Center" />
<ui:TextBox
Grid.Column="1"
MinWidth="210"
PlaceholderText="Type your file contents here..."
Text="{Binding ViewModel.FileToSaveContents}" />
</Grid>
<Grid Grid.Row="3" Margin="0,16,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<ui:Button
Command="{Binding ViewModel.SaveFileCommand}"
Content="Save a file"
Grid.Column="0" />
<ui:TextBlock
Grid.Column="1"
Margin="16,0,0,0"
Text="{Binding ViewModel.SavedFileNotice}"
VerticalAlignment="Center"
Visibility="{Binding ViewModel.SavedFileNoticeVisibility}" />
</Grid>
</Grid>
</GroupBox>
</ui:StackPanel>
</Page>