Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rotate this icon - previous project Easter Egg #79

Open
github-actions bot opened this issue Dec 23, 2023 · 0 comments
Open

Rotate this icon - previous project Easter Egg #79

github-actions bot opened this issue Dec 23, 2023 · 0 comments
Labels

Comments

@github-actions
Copy link

<!--TODO Rotate this icon - previous project Easter Egg-->

<Page x:Class="ProjectSBS.Presentation.NestedPages.HomePage"
      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
      xmlns:local="using:ProjectSBS.Presentation.NestedPages"
      xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
      xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
      xmlns:comp="using:ProjectSBS.Presentation.Components"
      xmlns:viewModels="using:ProjectSBS.Business.ViewModels"
      xmlns:muxc="using:Microsoft.UI.Xaml.Controls"
      xmlns:toolkit="using:CommunityToolkit.WinUI"
      xmlns:controls="using:CommunityToolkit.WinUI.Controls"
      xmlns:triggers="using:CommunityToolkit.WinUI"
      xmlns:models="using:ProjectSBS.Business.Models"
      xmlns:win="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
      xmlns:not_win="http://uno.ui/not_win"
      xmlns:not_android="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
      xmlns:android="http://uno.ui/android"
      mc:Ignorable="d not_win android">

  <Page.Resources>
    <win:ResourceDictionary>
      <ResourceDictionary.MergedDictionaries>
        <ResourceDictionary Source="ms-appx:///CommunityToolkit.WinUI.Controls.Segmented/Segmented/Segmented.xaml" />
      </ResourceDictionary.MergedDictionaries>
    </win:ResourceDictionary>
  </Page.Resources>

  <Grid>

    <VisualStateManager.VisualStateGroups>

      <!--Pane Opening DetailsPane-->
      <VisualStateGroup>
        <VisualState>
          <VisualState.StateTriggers>
            <triggers:IsEqualStateTrigger Value="{x:Bind ViewModel.IsPaneOpen, Mode=OneWay}"
                                          To="False" />
          </VisualState.StateTriggers>
          <VisualState.Setters>
            <Setter Target="pane2Holder.Visibility"
                    Value="Collapsed" />
            <Setter Target="RootPanel.PanePriority"
                    Value="Pane1" />
            <Setter Target="RootPanel.Pane2Length"
                    Value="0" />
          </VisualState.Setters>
        </VisualState>
      </VisualStateGroup>

      <!--Pane1 Empty Image-->
      <VisualStateGroup>
        <VisualState />
        <VisualState>
          <VisualState.StateTriggers>
            <triggers:IsNullOrEmptyStateTrigger Value="{x:Bind ViewModel.Items, Mode=OneWay}" />
          </VisualState.StateTriggers>
          <VisualState.Setters>
            <Setter Target="itemsEmptyImage.Visibility"
                    Value="Visible" />
          </VisualState.Setters>
        </VisualState>
      </VisualStateGroup>

      <!--AdaptiveTriggers-->
      <VisualStateGroup>
        <VisualState>
          <VisualState.StateTriggers>
            <AdaptiveTrigger MinWindowWidth="0" />
          </VisualState.StateTriggers>

          <VisualState.Setters>
            <Setter Target="mobileAddButton.Visibility"
                    Value="Visible" />
            <Setter Target="desktopAdd.Visibility"
                    Value="Collapsed" />
            <Setter Target="mobileHeader.Visibility"
                    Value="Visible" />
            <Setter Target="desktopHeader.Visibility"
                    Value="Collapsed" />
            <Setter Target="contentHolder.Margin"
                    Value="8,8,8,0" />
          </VisualState.Setters>
        </VisualState>

        <VisualState>
          <VisualState.StateTriggers>
            <AdaptiveTrigger MinWindowWidth="640" />
          </VisualState.StateTriggers>
        </VisualState>
      </VisualStateGroup>

    </VisualStateManager.VisualStateGroups>

    <muxc:TwoPaneView x:Name="RootPanel"
                      x:FieldModifier="public"
                      Pane1Length="*"
                      Pane2Length="350"
                      PanePriority="Pane2"
                      TallModeConfiguration="SinglePane"
                      WideModeConfiguration="LeftRight">

      <muxc:TwoPaneView.Pane1>

        <Grid Style="{ThemeResource PageBackground}">
          <ScrollViewer>
            <!--<RefreshContainer x:Name="contentHolder"
                                          Margin="48,48,48,0"
                                          RefreshRequested="RefreshContainer_RefreshRequested">-->

            <Grid x:Name="contentHolder"
                  Margin="48,48,48,0">

              <Grid.RowDefinitions>
                <RowDefinition Height="auto" />
                <RowDefinition Height="auto" />
                <RowDefinition Height="auto" />
                <RowDefinition Height="auto" />
                <RowDefinition />
              </Grid.RowDefinitions>

              <TextBlock x:Name="desktopHeader"
                         Visibility="Visible"
                         Text="{x:Bind ViewModel.SelectedCategory.Text}"
                         Style="{StaticResource TitleTextBlockStyle}" />

              <Grid x:Name="mobileHeader"
                    Visibility="Collapsed"
                    Margin="0,0,0,12"
                    ColumnSpacing="16">
                <Grid.ColumnDefinitions>
                  <ColumnDefinition Width="Auto" />
                  <ColumnDefinition />
                </Grid.ColumnDefinitions>

                <Button CornerRadius="30"
                        Padding="0"
                        BorderThickness="0"
                        Background="Transparent"
                        Command="{x:Bind ViewModel.OpenSettingsCommand}">
                  <PersonPicture ProfilePicture="{x:Bind ViewModel.User.Photo, Mode=OneWay}"
                                 DisplayName="{x:Bind ViewModel.User.Name, Mode=OneWay}"
                                 BorderThickness="0"
                                 Width="65" />
                </Button>

                <StackPanel Grid.Column="1"
                            VerticalAlignment="Center">
                  <TextBlock Text="{x:Bind ViewModel.WelcomeMessage}"
                             TextWrapping="WrapWholeWords"
                             Opacity="0.6"
                             Style="{StaticResource SubtitleTextBlockStyle}" />

                  <TextBlock Text="{x:Bind ViewModel.User.Name, Mode=OneWay}"
                             Visibility="{x:Bind ViewModel.IsLoggedIn, Mode=OneWay, Converter={StaticResource TrueToVisibleConverter}}"
                             TextWrapping="WrapWholeWords"
                             Style="{StaticResource TitleTextBlockStyle}" />
                </StackPanel>
              </Grid>

              <Button x:Name="desktopAdd"
                      Visibility="Visible"
                      Grid.Row="1"
                      Margin="0,12"
                      Content="{x:Bind ViewModel.NewItemText}"
                      Command="{x:Bind ViewModel.AddNewCommand}" />

              <comp:StatsBanner Visibility="{x:Bind ViewModel.IsStatsVisible, Mode=OneWay}"
                                Grid.Row="2" />

              <win:ScrollViewer HorizontalScrollMode="Auto"
                                HorizontalScrollBarVisibility="Auto"
                                VerticalScrollMode="Disabled"
                                VerticalScrollBarVisibility="Hidden"
                                Grid.Row="3"
                                Margin="-8, 0"
                                Padding="8,12">
                <controls:Segmented ItemsSource="{x:Bind ViewModel.FilterCategories}"
                                    SelectedItem="{x:Bind ViewModel.SelectedFilter, Mode=TwoWay}"
                                    Style="{StaticResource ButtonSegmentedStyle}">
                  <controls:Segmented.ItemTemplate>
                    <DataTemplate x:DataType="models:Tag">
                      <TextBlock Text="{x:Bind Name}"
                                 Margin="5,-3" />
                    </DataTemplate>
                  </controls:Segmented.ItemTemplate>

                  <controls:Segmented.ItemsPanel>
                    <ItemsPanelTemplate>
                      <StackPanel Spacing="8"
                                  Orientation="Horizontal" />
                    </ItemsPanelTemplate>
                  </controls:Segmented.ItemsPanel>

                </controls:Segmented>
              </win:ScrollViewer>

              <GridView ScrollViewer.VerticalScrollBarVisibility="Disabled"
                        ScrollViewer.VerticalScrollMode="Disabled"
                        ItemsSource="{x:Bind ViewModel.Items, Mode=OneWay}"
                        SelectedItem="{x:Bind ViewModel.SelectedItem, Mode=TwoWay}"
                        Grid.Row="4">

                <GridView.Resources>
                  <FontIconSource x:Key="EditIcon"
                                  Glyph="&#xE70F;" />
                  <FontIconSource x:Key="ArchiveIcon"
                                  Glyph="&#xE7B8;" />
                  <FontIconSource x:Key="DeleteIcon"
                                  Glyph="&#xE74D;" />

                  <SwipeItems x:Key="Left"
                              Mode="Execute">
                    <SwipeItem Text="Edit"
                               IconSource="{StaticResource EditIcon}"
                               Foreground="{StaticResource TextOnAccentFillColorPrimaryBrush}"
                               Background="{StaticResource SystemAccentColor}"
                               Invoked="EditItem_Invoked" />
                  </SwipeItems>
                  <SwipeItems x:Key="Right"
                              Mode="Execute">
                    <SwipeItem Text="Archive"
                               IconSource="{StaticResource ArchiveIcon}"
                               Foreground="{StaticResource TextOnAccentFillColorPrimaryBrush}"
                               Background="{ThemeResource SystemFillColorCriticalBrush}"
                               Invoked="ArchiveItem_Invoked" />
                  </SwipeItems>
                </GridView.Resources>

                <GridView.ItemsPanel>
                  <ItemsPanelTemplate>
                    <StackPanel Orientation="Vertical"
                                Spacing="4" />
                  </ItemsPanelTemplate>
                </GridView.ItemsPanel>

                <GridView.ItemTemplate>
                  <DataTemplate x:DataType="viewModels:ItemViewModel">
                    <UserControl android:Height="100">
                      <SwipeControl LeftItems="{StaticResource Left}"
                                    RightItems="{StaticResource Right}"
                                    Background="Transparent"
                                    not_win:CornerRadius="20"
                                    win:CornerRadius="8">

                        <Border not_win:Background="{ThemeResource CardBackgroundFillColorDefault}"
                                not_win:CornerRadius="20">

                          <Grid Padding="20">
                            <Grid.ColumnDefinitions>
                              <ColumnDefinition Width="*" />
                              <ColumnDefinition Width="*" />
                            </Grid.ColumnDefinitions>

                            <!-- Left Column -->
                            <StackPanel Spacing="6">
                              <Rectangle Fill="{x:Bind DisplayTag.Color, Mode=OneWay, Converter={StaticResource ColorToBrushConverter}}"
                                         Height="6"
                                         Width="80"
                                         RadiusY="3"
                                         RadiusX="3"
                                         HorizontalAlignment="Left" />
                              <TextBlock Text="{x:Bind Item.Name, Mode=OneWay}"
                                         VerticalAlignment="Center"
                                         Style="{StaticResource SubtitleTextBlockStyle}" />
                            </StackPanel>

                            <!-- Right Column -->
                            <StackPanel Grid.Column="1"
                                        Spacing="12"
                                        HorizontalAlignment="Right"
                                        VerticalAlignment="Center">
                              <TextBlock Style="{StaticResource SubtitleTextBlockStyle}"
                                         HorizontalAlignment="Right"
                                         Text="{x:Bind FormattedPrice, Mode=OneWay}" />
                              <TextBlock Text="{x:Bind FormattedPaymentDate, Mode=OneWay}"
                                         HorizontalAlignment="Right" />
                            </StackPanel>

                            <!--<Border Height="20"
                                      Grid.Column="2">
                                      <CheckBox CornerRadius="20"
                                                IsChecked="{x:Bind IsPaid, Mode=TwoWay}"
                                                Command="{x:Bind OnPayCommand}"
                                                Margin="20,0">
                                          <CheckBox.Resources>
                                              <ResourceDictionary>
                                                  <ResourceDictionary.ThemeDictionaries>
                                                      <ResourceDictionary x:Key="Dark">
                                                          <SolidColorBrush x:Key="CheckBoxForegroundUnchecked"
                                                                           Color="Purple" />
                                                          <SolidColorBrush x:Key="CheckBoxForegroundChecked"
                                                                           Color="Purple" />
                                                          <SolidColorBrush x:Key="CheckBoxCheckGlyphForegroundChecked"
                                                                           Color="White" />
                                                          <SolidColorBrush x:Key="CheckBoxCheckBackgroundStrokeChecked"
                                                                           Color="Purple" />
                                                          <SolidColorBrush x:Key="CheckBoxCheckBackgroundFillChecked"
                                                                           Color="Purple" />

                                                      </ResourceDictionary>
                                                  </ResourceDictionary.ThemeDictionaries>
                                              </ResourceDictionary>
                                          </CheckBox.Resources>
                                      </CheckBox>
                                  </Border>-->
                          </Grid>
                        </Border>
                      </SwipeControl>
                    </UserControl>
                  </DataTemplate>
                </GridView.ItemTemplate>
              </GridView>

              <StackPanel x:Name="itemsEmptyImage"
                          Spacing="12"
                          Grid.Row="4"
                          VerticalAlignment="Center"
                          Visibility="Collapsed"
                          Margin="0,0,0,20">

                <Image Source="/ProjectSBS/Assets/Illustrations/items_empty_illustration.png"
                       HorizontalAlignment="Center"
                       MaxWidth="300"
                       Margin="20" />

                <TextBlock Text="{x:Bind ViewModel.ItemsEmptyTitleText}"
                           TextWrapping="WrapWholeWords"
                           HorizontalAlignment="Center"
                           Style="{StaticResource BaseTextBlockStyle}" />

                <TextBlock Text="{x:Bind ViewModel.ItemsEmptyDescriptionText}"
                           TextWrapping="WrapWholeWords"
                           TextAlignment="Center"
                           HorizontalAlignment="Center"
                           Opacity="0.7" />

                <Button Content="{x:Bind ViewModel.NewItemText}"
                        HorizontalAlignment="Center"
                        Padding="20, 8"
                        Command="{x:Bind ViewModel.AddNewCommand}" />

              </StackPanel>
            </Grid>

            <!--</RefreshContainer>-->
          </ScrollViewer>

          <StackPanel x:Name="mobileAddButton"
                      VerticalAlignment="Bottom"
                      Grid.Row="4"
                      Visibility="Collapsed">

            <Button CornerRadius="22"
                    Height="65"
                    VerticalAlignment="Bottom"
                    HorizontalAlignment="Right"
                    ToolTipService.ToolTip="Add new"
                    Style="{StaticResource AccentButtonStyle}"
                    Margin="20"
                    Padding="22,0"
                    Command="{x:Bind ViewModel.AddNewCommand}">

              <!--TODO Rotate this icon - previous project Easter Egg-->
              <Grid>
                <Grid.ColumnDefinitions>
                  <ColumnDefinition Width="auto" />
                  <ColumnDefinition Width="auto" />
                </Grid.ColumnDefinitions>
                <SymbolIcon x:Name="fabIcon"
                            Symbol="Add" />

                <TextBlock Text="Add"
                           Grid.Column="1"
                           Margin="12,0,0,0" />
              </Grid>
            </Button>

          </StackPanel>

        </Grid>

      </muxc:TwoPaneView.Pane1>

      <muxc:TwoPaneView.Pane2>
        <Grid x:Name="pane2Holder"
              Visibility="Visible">

          <comp:ItemDetails />

        </Grid>
      </muxc:TwoPaneView.Pane2>

    </muxc:TwoPaneView>

  </Grid>
</Page>
@github-actions github-actions bot added the todo label Dec 23, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

0 participants