Commit fddb80b8 authored by Francesco Carraro's avatar Francesco Carraro
Browse files

refactoring...

parent 2f852d1a
Loading
Loading
Loading
Loading
+2 −3
Original line number Diff line number Diff line
@@ -11,7 +11,6 @@ using INAF.Apps.Uwp.SLabDataManager.Models.Chart;
using INAF.Apps.Uwp.SLabDataManager.Models.Chart.Fit;
using INAF.Apps.Uwp.SLabDataManager.Models.Charts;
using INAF.Apps.Uwp.SLabDataManager.Models.Containers;
using INAF.Apps.Uwp.SLabDataManager.Models.Logbook;
using INAF.Apps.Uwp.SLabDataManager.Services;
using INAF.Apps.Uwp.SLabDataManager.ViewModels;
using INAF.Apps.Uwp.SLabDataManager.ViewModels.ContentDialogsViewModel;
@@ -22,7 +21,7 @@ using INAF.Libraries.NetStandard.Math.Smoothing;
using INAF.Libraries.Uwp.Logging;
using INAF.Libraries.Uwp.RemoteAuthentication;
using INAF.Libraries.Uwp.Settings;
using INAF.Libraries.Uwp.Settings.RecentFiles;
using INAF.Libraries.Uwp.Settings.RecentStorageItems;
using INAF.Libraries.Uwp.StorageItemsAccess;
using INAF.Libraries.Uwp.Xml;
using Microsoft.AppCenter;
@@ -129,7 +128,7 @@ namespace INAF.Apps.Uwp.SLabDataManager
                .AddSingleton<LogBookViewModel>()
                .AddSingleton<Logger>(logger)
                .AddSingleton<PermissionsHelper>()
                .AddSingleton<RecentFilesHelper>()
                .AddSingleton<RecentStorageItemsHelper>()
                .AddSingleton<RemoteOperationsRepository>()
                .AddSingleton<SecondaryWindowHelper>()
                .AddSingleton<SegmentFitModelsFactory>()
+7 −5
Original line number Diff line number Diff line
@@ -257,11 +257,13 @@ namespace INAF.Apps.Uwp.SLabDataManager.Converters
                string[] tmp = filepath.Split(Path.DirectorySeparatorChar);
                if (tmp.Length > 4)
                {
                    List<string> list = new List<string>();
                    list.Add(tmp[0]);
                    list.Add("...");
                    list.Add(tmp[tmp.Length - 2]);
                    list.Add(tmp[tmp.Length - 1]);
                    List<string> list = new List<string>
                    {
                        tmp[0],
                        "...",
                        tmp[tmp.Length - 2],
                        tmp[tmp.Length - 1]
                    };

                    shortFilepath = string.Join(Path.DirectorySeparatorChar, list);
                }
+7 −7
Original line number Diff line number Diff line
using CommunityToolkit.Mvvm.ComponentModel;
using INAF.Libraries.Uwp.Settings.RecentFiles;
using INAF.Libraries.Uwp.Settings.RecentStorageItems;
using System.Collections.Generic;
using System.Linq;

namespace INAF.Apps.Uwp.SLabDataManager.Models.Containers
{
    public sealed class RecentFilesContainer : ObservableObject
    public sealed class RecentStorageItemsContainer : ObservableObject
    {
        public RecentFilesContainer()
        public RecentStorageItemsContainer()
        {
            AreAvailable = false;
        }
@@ -19,20 +19,20 @@ namespace INAF.Apps.Uwp.SLabDataManager.Models.Containers
            private set { areAvailable = value; }
        }

        private List<RecentFileModel> recentFiles;
        public List<RecentFileModel> RecentFiles
        private List<RecentStorageItemModel> recentFiles;
        public List<RecentStorageItemModel> RecentFiles
        {
            get { return recentFiles; }
            private set { SetProperty(ref recentFiles, value); }
        }

        public void addItems(IEnumerable<RecentFileModel> recentFiles)
        public void addItems(IEnumerable<RecentStorageItemModel> recentFiles)
        {
            RecentFiles = recentFiles.ToList();
            AreAvailable = true;
        }

        public RecentFileModel getLastSelected()
        public RecentStorageItemModel getLastSelected()
        {
            return recentFiles[0];
        }
+44 −0
Original line number Diff line number Diff line
@@ -517,6 +517,50 @@
        </Border>
    </ControlTemplate>

    <Flyout x:Name="RecentFilesFlyout"
            x:Key="RecentFilesFlyout"
            Placement="BottomEdgeAlignedLeft">
        <Flyout.FlyoutPresenterStyle>
            <Style TargetType="FlyoutPresenter">
                <Setter Property="Width" Value="600" />
                <Setter Property="Padding" Value="0" />
                <Setter Property="Margin" Value="0" />
                <Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Disabled"></Setter>
            </Style>
        </Flyout.FlyoutPresenterStyle>
        <Grid Width="600">
            <Grid.RowDefinitions>
                <RowDefinition Height="Auto" />
                <RowDefinition Height="Auto" />
            </Grid.RowDefinitions>
            <TextBlock x:Uid="RecentFilesFlyoutNoItemsMessage"
                           Visibility="{Binding Path=AreAvailable, Converter={StaticResource BoolToVisibilityInverseConverter}, Mode=OneWay}"
                           Margin="8"
                           Grid.Row="0" />
            <ListView ItemsSource="{Binding Path=RecentFiles, Mode=OneWay}"
                          IsItemClickEnabled="True"
                          SelectionMode="Single"
                          Visibility="{Binding Path=AreAvailable, Converter={StaticResource BoolToVisibilityConverter}, Mode=OneWay}"
                          Grid.Row="1">
                <!-- TEMPLATE -->
                <ListView.ItemTemplate>
                    <DataTemplate>
                        <TextBlock Text="{Binding Path, Converter={StaticResource ShortFilepathConverter}, Mode=OneWay}"
                                       FontSize="14"
                                       Margin="2,4"
                                       TextTrimming="CharacterEllipsis"/>
                    </DataTemplate>
                </ListView.ItemTemplate>
                <!-- BEHAVIORS -->
                <Interactivity:Interaction.Behaviors>
                    <Core:EventTriggerBehavior EventName="ItemClick">
                        <Core:InvokeCommandAction Command="{Binding CommandOpenSelectedSpectrumFile}"/>
                    </Core:EventTriggerBehavior>
                </Interactivity:Interaction.Behaviors>
            </ListView>
        </Grid>
    </Flyout>
    
    <!-- APP THEMES -->
    <ResourceDictionary.ThemeDictionaries>
        <ResourceDictionary x:Key="Dark">
+2 −3
Original line number Diff line number Diff line
@@ -7,10 +7,9 @@ using INAF.Apps.Uwp.SLabDataManager.Models;
using INAF.Apps.Uwp.SLabDataManager.Models.Containers;
using INAF.Apps.Uwp.SLabDataManager.ViewModels.ContentDialogsViewModel;
using INAF.Apps.Uwp.SLabDataManager.Views;
using INAF.Libraries.NetStandard.Extensions;
using INAF.Libraries.Uwp.Logging;
using INAF.Libraries.Uwp.Settings;
using INAF.Libraries.Uwp.Settings.RecentFiles;
using INAF.Libraries.Uwp.Settings.RecentStorageItems;
using INAF.Libraries.Uwp.StorageItemsAccess;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.UI.Xaml.Controls;
@@ -217,7 +216,7 @@ namespace INAF.Apps.Uwp.SLabDataManager.ViewModels
            /* clear REFWHITE white (it is not removed by removing the RAW one because is NOT considered as a 'child' spectrum) */
            WorkingItems.SpectraContainer.tryRemoveSpectrumOfTypeAsync(SpectrumType.RefWhite);

            var recentFilesHelper = serviceProvider.GetRequiredService<RecentFilesHelper>();
            var recentFilesHelper = serviceProvider.GetRequiredService<RecentStorageItemsHelper>();
            recentFilesHelper.clear(SpectrumType.Raw.ToString());
            recentFilesHelper.clear(SpectrumType.Ref.ToString());
            recentFilesHelper.clear(SpectrumType.RefWhite.ToString());
Loading