Dashboard und Schnellnavigation fix
This commit is contained in:
@@ -586,10 +586,10 @@
|
||||
<StackPanel>
|
||||
<TextBlock Text="MEINE LERNGRUPPEN" FontSize="11" FontWeight="Bold"
|
||||
Opacity="0.5" Margin="0,0,0,10"/>
|
||||
<ItemsControl ItemsSource="{Binding CurrentGroups}">
|
||||
<ItemsControl ItemsSource="{Binding CurrentGroups}" HorizontalAlignment="Stretch">
|
||||
<ItemsControl.ItemsPanel>
|
||||
<ItemsPanelTemplate>
|
||||
<WrapPanel Orientation="Horizontal"/>
|
||||
<WrapPanel Orientation="Horizontal" ItemSpacing="8" LineSpacing="8"/>
|
||||
</ItemsPanelTemplate>
|
||||
</ItemsControl.ItemsPanel>
|
||||
<ItemsControl.ItemTemplate>
|
||||
@@ -597,9 +597,15 @@
|
||||
<Button Command="{Binding $parent[ItemsControl].((vm:DashboardViewModel)DataContext).OpenGroupCommand}"
|
||||
CommandParameter="{Binding}"
|
||||
Background="{DynamicResource SystemAccentColorLight2}"
|
||||
CornerRadius="6" Padding="12,6" Margin="0,0,8,8">
|
||||
CornerRadius="6" Padding="12,6" MinWidth="150"
|
||||
ToolTip.Tip="Kurs öffnen">
|
||||
<StackPanel>
|
||||
<TextBlock Text="{Binding Name}" FontWeight="SemiBold" FontSize="13"/>
|
||||
<StackPanel Orientation="Horizontal" Spacing="6">
|
||||
<Border Width="6" Height="6" CornerRadius="3"
|
||||
Background="{DynamicResource SystemAccentColor}"
|
||||
IsVisible="{Binding IsOnSelectedDay}" VerticalAlignment="Center"/>
|
||||
<TextBlock Text="{Binding Name}" FontWeight="SemiBold" FontSize="13"/>
|
||||
</StackPanel>
|
||||
<TextBlock Text="{Binding Subject}" FontSize="11" Opacity="0.7"
|
||||
IsVisible="{Binding Subject, Converter={x:Static StringConverters.IsNotNullOrEmpty}}"/>
|
||||
</StackPanel>
|
||||
|
||||
@@ -28,8 +28,15 @@ public partial class GroupDocumentationTabView : UserControl
|
||||
var owner = TopLevel.GetTopLevel(this) as Window;
|
||||
if (owner is null) return null;
|
||||
|
||||
var options = new List<StudentOption> { GroupDocumentationTabViewModel.WholeGroupOption };
|
||||
options.AddRange(studentOptions);
|
||||
var vm = new DocumentationDialogViewModel(editing?.StudentId ?? Guid.Empty, editing,
|
||||
App.Services.GetRequiredService<IAttachmentStorage>(), studentOptions, groupId);
|
||||
App.Services.GetRequiredService<IAttachmentStorage>(), options, groupId);
|
||||
if (editing is null)
|
||||
{
|
||||
vm.SelectedStudent = GroupDocumentationTabViewModel.WholeGroupOption;
|
||||
vm.TypeName = DocumentationTypeDisplay.Label(DocumentationType.Planning);
|
||||
}
|
||||
var dialog = new DocumentationDialog { DataContext = vm };
|
||||
var saved = await dialog.ShowDialog<bool>(owner);
|
||||
if (!saved) vm.DiscardUnsavedAttachments();
|
||||
|
||||
@@ -13,10 +13,10 @@
|
||||
<TextBlock Text="{Binding DialogTitle}" Classes="dialogtitle"/>
|
||||
|
||||
<StackPanel Spacing="4" IsVisible="{Binding CanPickStudent}">
|
||||
<TextBlock Text="Schüler *" FontSize="12" Opacity="0.7"/>
|
||||
<TextBlock Text="Bezug *" FontSize="12" Opacity="0.7"/>
|
||||
<ComboBox ItemsSource="{Binding StudentOptions}" SelectedItem="{Binding SelectedStudent}"
|
||||
DisplayMemberBinding="{Binding Name}" HorizontalAlignment="Stretch"
|
||||
PlaceholderText="Schüler wählen"/>
|
||||
PlaceholderText="Schüler oder gesamte Lerngruppe wählen"/>
|
||||
<TextBlock Text="{Binding StudentError}" Foreground="Red" FontSize="11"
|
||||
IsVisible="{Binding StudentError, Converter={x:Static StringConverters.IsNotNullOrEmpty}}"/>
|
||||
</StackPanel>
|
||||
|
||||
@@ -0,0 +1,44 @@
|
||||
<Window xmlns="https://github.com/avaloniaui"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:vm="clr-namespace:LehrerApp.Desktop.ViewModels.Students"
|
||||
x:Class="LehrerApp.Desktop.Views.Students.GroupDocumentationQuickDialog"
|
||||
x:DataType="vm:GroupDocumentationQuickViewModel"
|
||||
Title="Lerngruppen-Eintrag" Width="480" SizeToContent="Height"
|
||||
CanResize="False" WindowStartupLocation="CenterOwner">
|
||||
<Grid RowDefinitions="*,Auto" Margin="24">
|
||||
<StackPanel Spacing="12">
|
||||
<TextBlock Text="Lerngruppen-Eintrag" Classes="dialogtitle"/>
|
||||
<TextBlock Text="Planung, Klausur oder Erinnerung für eine ganze Lerngruppe festhalten."
|
||||
TextWrapping="Wrap" Opacity="0.7"/>
|
||||
<StackPanel Spacing="4">
|
||||
<TextBlock Text="Lerngruppe *" FontSize="12" Opacity="0.7"/>
|
||||
<ComboBox ItemsSource="{Binding Groups}" SelectedItem="{Binding SelectedGroup}"
|
||||
DisplayMemberBinding="{Binding DisplayName}" PlaceholderText="Lerngruppe wählen"/>
|
||||
<TextBlock Text="{Binding GroupError}" Foreground="Red" FontSize="11"
|
||||
IsVisible="{Binding GroupError, Converter={x:Static StringConverters.IsNotNullOrEmpty}}"/>
|
||||
</StackPanel>
|
||||
<Grid ColumnDefinitions="*,12,140">
|
||||
<StackPanel Spacing="4">
|
||||
<TextBlock Text="Titel *" FontSize="12" Opacity="0.7"/>
|
||||
<TextBox Text="{Binding Title}" PlaceholderText="z. B. Klausur ankündigen"/>
|
||||
<TextBlock Text="{Binding TitleError}" Foreground="Red" FontSize="11"
|
||||
IsVisible="{Binding TitleError, Converter={x:Static StringConverters.IsNotNullOrEmpty}}"/>
|
||||
</StackPanel>
|
||||
<StackPanel Grid.Column="2" Spacing="4">
|
||||
<TextBlock Text="Datum *" FontSize="12" Opacity="0.7"/>
|
||||
<TextBox Text="{Binding DateText}"/>
|
||||
<TextBlock Text="{Binding DateError}" Foreground="Red" FontSize="11"
|
||||
IsVisible="{Binding DateError, Converter={x:Static StringConverters.IsNotNullOrEmpty}}"/>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
<StackPanel Spacing="4">
|
||||
<TextBlock Text="Notiz" FontSize="12" Opacity="0.7"/>
|
||||
<TextBox Text="{Binding Content}" AcceptsReturn="True" Height="90" TextWrapping="Wrap"/>
|
||||
</StackPanel>
|
||||
</StackPanel>
|
||||
<StackPanel Grid.Row="1" Orientation="Horizontal" HorizontalAlignment="Right" Spacing="8" Margin="0,20,0,0">
|
||||
<Button Content="Abbrechen" Click="OnCancel"/>
|
||||
<Button Content="Speichern" Classes="accent" Click="OnSave"/>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</Window>
|
||||
@@ -0,0 +1,19 @@
|
||||
using Avalonia.Controls;
|
||||
using Avalonia.Interactivity;
|
||||
using LehrerApp.Desktop.ViewModels.Students;
|
||||
|
||||
namespace LehrerApp.Desktop.Views.Students;
|
||||
|
||||
public partial class GroupDocumentationQuickDialog : Window
|
||||
{
|
||||
public GroupDocumentationQuickDialog() => InitializeComponent();
|
||||
|
||||
private void OnSave(object? sender, RoutedEventArgs e)
|
||||
{
|
||||
if (DataContext is not GroupDocumentationQuickViewModel vm) return;
|
||||
vm.SaveCommand.Execute(null);
|
||||
if (vm.Result is not null) Close(true);
|
||||
}
|
||||
|
||||
private void OnCancel(object? sender, RoutedEventArgs e) => Close(false);
|
||||
}
|
||||
Reference in New Issue
Block a user