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

fixed issue in fit-segments panel

parent 24d36e5f
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -127,6 +127,7 @@ namespace INAF.Apps.Uwp.SLabDataManager
                .AddSingleton<RecentFilesHelper>()
                .AddSingleton<RemoteOperationsRepository>()
                .AddSingleton<SecondaryWindowHelper>()
                .AddSingleton<SegmentFitModelsFactory>()
                .AddSingleton<SegmentsFitModelHelper>()
                .AddSingleton<SelectedRefBand>()
                .AddSingleton<SettingsHelper>()
@@ -148,7 +149,6 @@ namespace INAF.Apps.Uwp.SLabDataManager
                .AddTransient<SplineProcessingHelper>()
                .AddTransient<RemoteOperationsManager>()
                .AddTransient<RemoteOperationsXmlReader>()
                .AddTransient<SegmentFitModelsFactory>()
                .AddTransient<SpectrumModelFactory>()
                .AddTransient<SpectrumProcessingHelper>()
                .AddTransient<SpectrumReader>()
+10 −1
Original line number Diff line number Diff line
@@ -10,7 +10,7 @@ namespace INAF.Apps.Uwp.SLabDataManager.Models.Fit
            IsInitialized = false;
        }

        public List<FitMethodModel> FitMethods { get; private set; }
        private List<FitMethodModel> FitMethods { get; set; }

        public bool IsInitialized { get; private set; }

@@ -19,6 +19,15 @@ namespace INAF.Apps.Uwp.SLabDataManager.Models.Fit
            FitMethods.Add(fitMethod);
        }

        public List<FitMethodModel> getFitMethods()
        {
            List<FitMethodModel> clonedMethods = new List<FitMethodModel>(FitMethods.Count);
            foreach (var fitMethod in FitMethods)
                clonedMethods.Add((FitMethodModel)fitMethod.Clone());

            return clonedMethods;
        }

        public void setIsInitialized(bool isInitialized)
        {
            IsInitialized = isInitialized;
+21 −2
Original line number Diff line number Diff line
using INAF.Apps.Uwp.SLabDataManager.Models.Fit.Parameters;
using Microsoft.Toolkit.Mvvm.ComponentModel;
using Microsoft.Toolkit.Mvvm.Input;
using System;

namespace INAF.Apps.Uwp.SLabDataManager.Models.Fit
{
    public class FitMethodModel : ObservableObject
    public class FitMethodModel : ObservableObject, ICloneable
    {
        public FitMethodModel(string name,
                              string helperClassName,
@@ -85,5 +85,24 @@ namespace INAF.Apps.Uwp.SLabDataManager.Models.Fit
            OnPropertyChanged(nameof(ParameterConstraintValue.ParameterConstraintExplanation.Items));
            isTeachingTipOpen = false;
        }

        public object Clone()
        {
            if (parameterConstraintValue != null)
                return new FitMethodModel(Name,
                                          HelperClassName,
                                          MethodName,
                                          ParameterName,
                                          ParameterConstraintValue.Value,
                                          ParameterConstraintValue.Minimum,
                                          ParameterConstraintValue.Maximum,
                                          ParameterConstraintValue.Text,
                                          IsEnabledForSmoothing);
            else
                return new FitMethodModel(Name,
                                          HelperClassName,
                                          MethodName,
                                          IsEnabledForSmoothing);
        }
    }
}
+3 −0
Original line number Diff line number Diff line
@@ -10,6 +10,7 @@ namespace INAF.Apps.Uwp.SLabDataManager.Models.Fit.Parameters
            Value = value;
            Minimum = minimum;
            Maximum = maximum;
            Text = text;
            ParameterConstraintExplanation = new ParameterConstraintExplanationModel(text);
        }

@@ -27,6 +28,8 @@ namespace INAF.Apps.Uwp.SLabDataManager.Models.Fit.Parameters
            private set { SetProperty(ref minimum, value); }
        }

        public string Text { get; private set; }

        private double _value;
        public double Value
        {
+1 −1
Original line number Diff line number Diff line
@@ -14,7 +14,7 @@ namespace INAF.Apps.Uwp.SLabDataManager.Models.Fit
        public SegmentFitModel createSegmentFitModel(PointModel p1,
                                                     PointModel p2)
        {
            return new SegmentFitModel(p1, p2, fitMethodsContainer.FitMethods);
            return new SegmentFitModel(p1, p2, fitMethodsContainer.getFitMethods());
        }
    }
}
Loading