Bunch of calendar implementation thing.

This commit is contained in:
Burak Kaan Köse
2026-02-15 11:27:30 +01:00
parent acf0f649e8
commit 42e51571a8
14 changed files with 804 additions and 128 deletions
@@ -3,20 +3,29 @@
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:abstract="using:Wino.Views.Abstract"
xmlns:helpers="using:Wino.Helpers"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:helpers="using:Wino.Helpers"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d">
<ScrollViewer>
<StackPanel MaxWidth="1040" Padding="24,20,24,24" Spacing="16">
<StackPanel
MaxWidth="1040"
Padding="24,20,24,24"
Spacing="16">
<StackPanel Spacing="4">
<TextBlock FontSize="30" FontWeight="SemiBold" Text="{x:Bind ViewModel.PageTitle, Mode=OneWay}" />
<TextBlock
FontSize="30"
FontWeight="SemiBold"
Text="{x:Bind ViewModel.PageTitle, Mode=OneWay}" />
<TextBlock
Opacity="0.85"
Text="{x:Bind ViewModel.SubtitleText, Mode=OneWay}"
TextWrapping="WrapWholeWords" />
<TextBlock Opacity="0.85" Text="{x:Bind ViewModel.ProviderHint, Mode=OneWay}" TextWrapping="WrapWholeWords" />
<TextBlock
Opacity="0.85"
Text="{x:Bind ViewModel.ProviderHint, Mode=OneWay}"
TextWrapping="WrapWholeWords" />
</StackPanel>
<SelectorBar x:Name="SetupModeSelector" SelectionChanged="OnSetupModeSelectionChanged">
@@ -32,15 +41,29 @@
CornerRadius="12"
Visibility="{x:Bind helpers:XamlHelpers.ReverseBoolToVisibilityConverter(ViewModel.IsAdvancedSetupSelected), Mode=OneWay}">
<StackPanel Spacing="12">
<TextBlock FontSize="19" FontWeight="SemiBold" Text="{x:Bind ViewModel.BasicSectionTitleText, Mode=OneWay}" />
<TextBlock Opacity="0.75" Text="{x:Bind ViewModel.BasicSectionDescriptionText, Mode=OneWay}" TextWrapping="WrapWholeWords" />
<TextBlock
FontSize="19"
FontWeight="SemiBold"
Text="{x:Bind ViewModel.BasicSectionTitleText, Mode=OneWay}" />
<TextBlock
Opacity="0.75"
Text="{x:Bind ViewModel.BasicSectionDescriptionText, Mode=OneWay}"
TextWrapping="WrapWholeWords" />
<Grid ColumnSpacing="12">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<TextBox Grid.Column="0" Header="{x:Bind ViewModel.DisplayNameHeaderText, Mode=OneWay}" PlaceholderText="{x:Bind ViewModel.DisplayNamePlaceholderText, Mode=OneWay}" Text="{x:Bind ViewModel.DisplayName, Mode=TwoWay}" />
<TextBox Grid.Column="1" Header="{x:Bind ViewModel.EmailAddressHeaderText, Mode=OneWay}" PlaceholderText="{x:Bind ViewModel.EmailAddressPlaceholderText, Mode=OneWay}" Text="{x:Bind ViewModel.EmailAddress, Mode=TwoWay}" />
<TextBox
Grid.Column="0"
Header="{x:Bind ViewModel.DisplayNameHeaderText, Mode=OneWay}"
PlaceholderText="{x:Bind ViewModel.DisplayNamePlaceholderText, Mode=OneWay}"
Text="{x:Bind ViewModel.DisplayName, Mode=TwoWay}" />
<TextBox
Grid.Column="1"
Header="{x:Bind ViewModel.EmailAddressHeaderText, Mode=OneWay}"
PlaceholderText="{x:Bind ViewModel.EmailAddressPlaceholderText, Mode=OneWay}"
Text="{x:Bind ViewModel.EmailAddress, Mode=TwoWay}" />
</Grid>
<PasswordBox Header="{x:Bind ViewModel.PasswordHeaderText, Mode=OneWay}" Password="{x:Bind ViewModel.Password, Mode=TwoWay}" />
<CheckBox Content="{x:Bind ViewModel.EnableCalendarSupportText, Mode=OneWay}" IsChecked="{x:Bind ViewModel.IsCalendarSupportEnabled, Mode=TwoWay}" />
@@ -59,7 +82,10 @@
CornerRadius="12"
Visibility="{x:Bind helpers:XamlHelpers.ReverseBoolToVisibilityConverter(ViewModel.IsBasicSetupSelected), Mode=OneWay}">
<StackPanel Spacing="14">
<TextBlock FontSize="19" FontWeight="SemiBold" Text="{x:Bind ViewModel.AdvancedSectionTitleText, Mode=OneWay}" />
<TextBlock
FontSize="19"
FontWeight="SemiBold"
Text="{x:Bind ViewModel.AdvancedSectionTitleText, Mode=OneWay}" />
<TextBlock
Opacity="0.75"
Text="{x:Bind ViewModel.AdvancedSectionDescriptionText, Mode=OneWay}"
@@ -113,14 +139,23 @@
BorderThickness="1"
CornerRadius="12">
<StackPanel Spacing="12">
<TextBlock FontSize="19" FontWeight="SemiBold" Text="{x:Bind ViewModel.CalendarSectionTitleText, Mode=OneWay}" />
<TextBlock Opacity="0.75" Text="{x:Bind ViewModel.CalendarSectionDescriptionText, Mode=OneWay}" TextWrapping="WrapWholeWords" />
<TextBlock
FontSize="19"
FontWeight="SemiBold"
Text="{x:Bind ViewModel.CalendarSectionTitleText, Mode=OneWay}" />
<TextBlock
Opacity="0.75"
Text="{x:Bind ViewModel.CalendarSectionDescriptionText, Mode=OneWay}"
TextWrapping="WrapWholeWords" />
<ComboBox
Header="{x:Bind ViewModel.CalendarModeHeaderText, Mode=OneWay}"
IsEnabled="{x:Bind ViewModel.IsCalendarModeSelectionVisible, Mode=OneWay}"
ItemsSource="{x:Bind ViewModel.AvailableCalendarSupportModeTitles}"
SelectedIndex="{x:Bind ViewModel.SelectedCalendarSupportModeIndex, Mode=TwoWay}" />
<TextBlock Opacity="0.8" Text="{x:Bind ViewModel.SelectedCalendarSupportDescription, Mode=OneWay}" TextWrapping="WrapWholeWords" />
<TextBlock
Opacity="0.8"
Text="{x:Bind ViewModel.SelectedCalendarSupportDescription, Mode=OneWay}"
TextWrapping="WrapWholeWords" />
<Button
HorizontalAlignment="Left"
Command="{x:Bind ViewModel.ShowLocalCalendarExplanationCommand}"
@@ -157,14 +192,24 @@
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<Button Grid.Column="0" Command="{x:Bind ViewModel.TestImapConnectionCommand}" Content="{x:Bind ViewModel.TestImapButtonText, Mode=OneWay}" />
<Button
Grid.Column="0"
Command="{x:Bind ViewModel.TestImapConnectionCommand}"
Content="{x:Bind ViewModel.TestImapButtonText, Mode=OneWay}" />
<Button
Grid.Column="1"
Command="{x:Bind ViewModel.TestCalDavConnectionCommand}"
Content="{x:Bind ViewModel.TestCalDavButtonText, Mode=OneWay}"
IsEnabled="{x:Bind ViewModel.IsCalDavSettingsVisible, Mode=OneWay}" />
<Button Grid.Column="3" Command="{x:Bind ViewModel.CancelCommand}" Content="{x:Bind ViewModel.CancelButtonText, Mode=OneWay}" />
<Button Grid.Column="4" Command="{x:Bind ViewModel.SaveCommand}" Content="{x:Bind ViewModel.SaveButtonText, Mode=OneWay}" Style="{ThemeResource AccentButtonStyle}" />
<Button
Grid.Column="3"
Command="{x:Bind ViewModel.CancelCommand}"
Content="{x:Bind ViewModel.CancelButtonText, Mode=OneWay}" />
<Button
Grid.Column="4"
Command="{x:Bind ViewModel.SaveCommand}"
Content="{x:Bind ViewModel.SaveButtonText, Mode=OneWay}"
Style="{ThemeResource AccentButtonStyle}" />
</Grid>
</StackPanel>
</ScrollViewer>