Refresh uploader UI styling
This commit is contained in:
@@ -6,5 +6,85 @@
|
||||
|
||||
<Application.Styles>
|
||||
<FluentTheme />
|
||||
<Style>
|
||||
<Style.Resources>
|
||||
<Color x:Key="BrandRose">#FFB6C1</Color>
|
||||
<Color x:Key="BrandRoseStrong">#FF69B4</Color>
|
||||
<Color x:Key="BrandRoseSoft">#FFE5EC</Color>
|
||||
<Color x:Key="BrandGold">#FFD700</Color>
|
||||
<Color x:Key="BrandSky">#87CEEB</Color>
|
||||
<Color x:Key="BrandSkySoft">#E0F5FF</Color>
|
||||
<Color x:Key="BrandNavy">#0F4C75</Color>
|
||||
<Color x:Key="BrandSlate">#1F2937</Color>
|
||||
<Color x:Key="BrandCream">#FFF8F5</Color>
|
||||
|
||||
<SolidColorBrush x:Key="TextPrimaryBrush" Color="{DynamicResource BrandSlate}" />
|
||||
<SolidColorBrush x:Key="TextMutedBrush" Color="#6B7280" />
|
||||
<SolidColorBrush x:Key="CardBorderBrush" Color="{DynamicResource BrandRoseSoft}" />
|
||||
<SolidColorBrush x:Key="CardBackgroundBrush" Color="#FFFFFF" />
|
||||
<SolidColorBrush x:Key="AccentBackgroundBrush" Color="{DynamicResource BrandSkySoft}" />
|
||||
<SolidColorBrush x:Key="InputBorderBrush" Color="{DynamicResource BrandRoseSoft}" />
|
||||
<SolidColorBrush x:Key="InputBackgroundBrush" Color="#FFFFFF" />
|
||||
<SolidColorBrush x:Key="PrimaryButtonBrush" Color="{DynamicResource BrandRoseStrong}" />
|
||||
<SolidColorBrush x:Key="PrimaryButtonTextBrush" Color="#FFFFFF" />
|
||||
<SolidColorBrush x:Key="SecondaryButtonBrush" Color="{DynamicResource BrandSky}" />
|
||||
<SolidColorBrush x:Key="SecondaryButtonTextBrush" Color="{DynamicResource BrandNavy}" />
|
||||
|
||||
<LinearGradientBrush x:Key="WindowBackgroundBrush" StartPoint="0,0" EndPoint="1,1">
|
||||
<GradientStop Color="{DynamicResource BrandCream}" Offset="0" />
|
||||
<GradientStop Color="{DynamicResource BrandRoseSoft}" Offset="0.5" />
|
||||
<GradientStop Color="{DynamicResource BrandSkySoft}" Offset="1" />
|
||||
</LinearGradientBrush>
|
||||
</Style.Resources>
|
||||
</Style>
|
||||
|
||||
<Style Selector="Window">
|
||||
<Setter Property="Background" Value="{DynamicResource WindowBackgroundBrush}" />
|
||||
<Setter Property="FontFamily" Value="Inter" />
|
||||
<Setter Property="Foreground" Value="{DynamicResource TextPrimaryBrush}" />
|
||||
</Style>
|
||||
|
||||
<Style Selector="TextBlock.title">
|
||||
<Setter Property="FontSize" Value="20" />
|
||||
<Setter Property="FontWeight" Value="SemiBold" />
|
||||
</Style>
|
||||
|
||||
<Style Selector="TextBlock.subtitle">
|
||||
<Setter Property="FontSize" Value="12" />
|
||||
<Setter Property="Foreground" Value="{DynamicResource TextMutedBrush}" />
|
||||
</Style>
|
||||
|
||||
<Style Selector="Border.card">
|
||||
<Setter Property="Background" Value="{DynamicResource CardBackgroundBrush}" />
|
||||
<Setter Property="BorderBrush" Value="{DynamicResource CardBorderBrush}" />
|
||||
<Setter Property="BorderThickness" Value="1" />
|
||||
<Setter Property="CornerRadius" Value="12" />
|
||||
</Style>
|
||||
|
||||
<Style Selector="Border.card.accent">
|
||||
<Setter Property="Background" Value="{DynamicResource AccentBackgroundBrush}" />
|
||||
</Style>
|
||||
|
||||
<Style Selector="TextBox">
|
||||
<Setter Property="BorderBrush" Value="{DynamicResource InputBorderBrush}" />
|
||||
<Setter Property="Background" Value="{DynamicResource InputBackgroundBrush}" />
|
||||
<Setter Property="CornerRadius" Value="8" />
|
||||
<Setter Property="Padding" Value="10,8" />
|
||||
</Style>
|
||||
|
||||
<Style Selector="Button">
|
||||
<Setter Property="CornerRadius" Value="8" />
|
||||
<Setter Property="Padding" Value="12,8" />
|
||||
</Style>
|
||||
|
||||
<Style Selector="Button.primary">
|
||||
<Setter Property="Background" Value="{DynamicResource PrimaryButtonBrush}" />
|
||||
<Setter Property="Foreground" Value="{DynamicResource PrimaryButtonTextBrush}" />
|
||||
</Style>
|
||||
|
||||
<Style Selector="Button.secondary">
|
||||
<Setter Property="Background" Value="{DynamicResource SecondaryButtonBrush}" />
|
||||
<Setter Property="Foreground" Value="{DynamicResource SecondaryButtonTextBrush}" />
|
||||
</Style>
|
||||
</Application.Styles>
|
||||
</Application>
|
||||
@@ -7,18 +7,22 @@
|
||||
Width="560" Height="420"
|
||||
MinWidth="520" MinHeight="400"
|
||||
Title="Die Fotospiel.App - Photobooth Uploader">
|
||||
<Grid Margin="24,32,24,24" ColumnDefinitions="*,8,*">
|
||||
<StackPanel Grid.Column="0" Spacing="12" MaxWidth="420">
|
||||
<StackPanel Orientation="Horizontal" Spacing="10" VerticalAlignment="Center">
|
||||
<Image Source="avares://PhotoboothUploader/Assets/logo.png" Width="32" Height="32" />
|
||||
<Grid Margin="24,32,24,24" ColumnDefinitions="*,16,*">
|
||||
<StackPanel Grid.Column="0" Spacing="16" MaxWidth="420">
|
||||
<StackPanel Orientation="Horizontal" Spacing="12" VerticalAlignment="Center">
|
||||
<Border Width="40" Height="40" Classes="card accent" VerticalAlignment="Center" HorizontalAlignment="Left">
|
||||
<Image Source="avares://PhotoboothUploader/Assets/logo.png" Width="28" Height="28" HorizontalAlignment="Center" VerticalAlignment="Center" />
|
||||
</Border>
|
||||
<StackPanel Spacing="2">
|
||||
<TextBlock x:Name="TitleText"
|
||||
Text="Die Fotospiel.App - Photobooth Uploader"
|
||||
FontSize="18"
|
||||
FontWeight="SemiBold"
|
||||
Classes="title"
|
||||
PointerPressed="TitleText_PointerPressed" />
|
||||
<TextBlock Text="Sicherer Upload der Fotobox-Fotos ins Event." Classes="subtitle" />
|
||||
</StackPanel>
|
||||
</StackPanel>
|
||||
|
||||
<Border Background="#1F000000" Padding="12" CornerRadius="8">
|
||||
<Border Padding="14" Classes="card">
|
||||
<StackPanel Spacing="6">
|
||||
<TextBlock Text="Schritte" FontWeight="SemiBold" />
|
||||
<TextBlock x:Name="StepCodeText" Text="1. Code eingeben" />
|
||||
@@ -27,36 +31,45 @@
|
||||
</StackPanel>
|
||||
</Border>
|
||||
|
||||
<TextBlock Text="Gib den 6-stelligen Verbindungscode ein." TextWrapping="Wrap" />
|
||||
<Border Padding="14" Classes="card">
|
||||
<StackPanel Spacing="10">
|
||||
<TextBlock Text="Verbindungscode" FontWeight="SemiBold" />
|
||||
<TextBlock Text="Gib den 6-stelligen Verbindungscode ein." TextWrapping="Wrap" Classes="subtitle" />
|
||||
<TextBox x:Name="CodeBox" MaxLength="6" Watermark="123456" TextChanged="CodeBox_TextChanged" />
|
||||
<StackPanel Orientation="Horizontal" Spacing="8">
|
||||
<Button x:Name="ConnectButton" Content="Verbinden" Click="ConnectButton_Click" />
|
||||
<Button x:Name="ReconnectButton" Content="Erneut verbinden" Click="ReconnectButton_Click" IsEnabled="False" />
|
||||
<Button x:Name="ConnectButton" Content="Verbinden" Click="ConnectButton_Click" Classes="primary" />
|
||||
<Button x:Name="ReconnectButton" Content="Erneut verbinden" Click="ReconnectButton_Click" IsEnabled="False" Classes="secondary" />
|
||||
</StackPanel>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
|
||||
<StackPanel Spacing="6">
|
||||
<Border Padding="14" Classes="card">
|
||||
<StackPanel Spacing="8">
|
||||
<TextBlock Text="Upload-Ordner" FontWeight="SemiBold" />
|
||||
<TextBlock x:Name="FolderText" Text="Noch nicht ausgewählt." TextWrapping="Wrap" />
|
||||
<Button x:Name="PickFolderButton" Content="Ordner auswählen" Click="PickFolderButton_Click" IsEnabled="False" />
|
||||
<Button x:Name="TestUploadButton" Content="Test-Upload senden" Click="TestUploadButton_Click" IsEnabled="False" />
|
||||
<TextBlock x:Name="FolderText" Text="Noch nicht ausgewählt." TextWrapping="Wrap" Classes="subtitle" />
|
||||
<StackPanel Orientation="Horizontal" Spacing="8">
|
||||
<Button x:Name="PickFolderButton" Content="Ordner auswählen" Click="PickFolderButton_Click" IsEnabled="False" Classes="primary" />
|
||||
<Button x:Name="TestUploadButton" Content="Test-Upload senden" Click="TestUploadButton_Click" IsEnabled="False" Classes="secondary" />
|
||||
</StackPanel>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
|
||||
<ToggleSwitch x:Name="QuietToggle" Content="Ruhiger Modus (nur Fehler anzeigen)" />
|
||||
|
||||
<Border x:Name="AdvancedPanel" Background="#1F000000" Padding="12" CornerRadius="8" IsVisible="False">
|
||||
<Border x:Name="AdvancedPanel" Padding="12" Classes="card accent" IsVisible="False">
|
||||
<StackPanel Spacing="6">
|
||||
<TextBlock Text="Erweiterte Einstellungen" FontWeight="SemiBold" />
|
||||
<TextBlock Text="Basis-URL" />
|
||||
<TextBox x:Name="BaseUrlBox" Watermark="https://fotospiel.app" />
|
||||
<TextBlock Text="Max. parallele Uploads" />
|
||||
<TextBox x:Name="MaxUploadsBox" Watermark="2" />
|
||||
<Button x:Name="SaveAdvancedButton" Content="Speichern" Click="SaveAdvancedButton_Click" />
|
||||
<Button x:Name="SaveAdvancedButton" Content="Speichern" Click="SaveAdvancedButton_Click" Classes="primary" />
|
||||
</StackPanel>
|
||||
</Border>
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel Grid.Column="2" Spacing="12" MaxWidth="380" Margin="0,6,0,0">
|
||||
<Border Background="#1F000000" Padding="12" CornerRadius="8">
|
||||
<StackPanel Grid.Column="2" Spacing="16" MaxWidth="380" Margin="0,6,0,0">
|
||||
<Border Padding="14" Classes="card accent">
|
||||
<StackPanel Spacing="6">
|
||||
<TextBlock Text="Status" FontWeight="SemiBold" />
|
||||
<TextBlock x:Name="StatusText" Text="Nicht verbunden." TextWrapping="Wrap" />
|
||||
@@ -66,7 +79,7 @@
|
||||
</StackPanel>
|
||||
</Border>
|
||||
|
||||
<Border Background="#1F000000" Padding="12" CornerRadius="8">
|
||||
<Border Padding="14" Classes="card">
|
||||
<StackPanel Spacing="6">
|
||||
<TextBlock Text="Details" FontWeight="SemiBold" />
|
||||
<TextBlock x:Name="EventNameText" Text="Event: —" TextWrapping="Wrap" />
|
||||
@@ -78,12 +91,13 @@
|
||||
</StackPanel>
|
||||
</Border>
|
||||
|
||||
<StackPanel Spacing="6">
|
||||
<Border Padding="14" Classes="card">
|
||||
<StackPanel Spacing="8">
|
||||
<TextBlock Text="Letzte Uploads" FontWeight="SemiBold" />
|
||||
<ItemsControl x:Name="RecentUploadsList" ItemsSource="{Binding RecentUploads}">
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Border Background="#14000000" Padding="8" CornerRadius="6" Margin="0,0,0,6">
|
||||
<Border Background="#14FFFFFF" Padding="10" CornerRadius="8" Margin="0,0,0,8">
|
||||
<Grid ColumnDefinitions="*,Auto" RowDefinitions="Auto,Auto">
|
||||
<TextBlock Grid.Column="0" Grid.Row="0" Text="{Binding FileName}" />
|
||||
<TextBlock Grid.Column="1" Grid.Row="0" Text="{Binding StatusLabel}" />
|
||||
@@ -93,8 +107,9 @@
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
</ItemsControl>
|
||||
<Button x:Name="RetryFailedButton" Content="Fehlgeschlagene erneut senden" Click="RetryFailedButton_Click" IsEnabled="False" />
|
||||
<Button x:Name="RetryFailedButton" Content="Fehlgeschlagene erneut senden" Click="RetryFailedButton_Click" IsEnabled="False" Classes="secondary" />
|
||||
</StackPanel>
|
||||
</Border>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</Window>
|
||||
|
||||
Reference in New Issue
Block a user