diff --git a/src/MSDIAL5/SpectrumViewer/Model/DisplayScan.cs b/src/MSDIAL5/SpectrumViewer/Model/DisplayScan.cs
index cd409bb87..6273edd48 100644
--- a/src/MSDIAL5/SpectrumViewer/Model/DisplayScan.cs
+++ b/src/MSDIAL5/SpectrumViewer/Model/DisplayScan.cs
@@ -4,6 +4,7 @@
using CompMs.CommonMVVM;
using System;
using System.Collections.Generic;
+using System.Linq;
namespace CompMs.App.SpectrumViewer.Model
{
@@ -35,6 +36,7 @@ public bool IsSelected {
public ChromXs ChromXs { get => Scan.ChromXs; set => Scan.ChromXs = value; }
public IonMode IonMode { get => Scan.IonMode; set => Scan.IonMode = value; }
public double PrecursorMz { get => Scan.PrecursorMz; set => Scan.PrecursorMz = value; }
+ public object[] SpectrumLabel => Scan.Spectrum.Select(p => new { p.Mass, p.Intensity, NeutralLoss = p.Mass - Scan.PrecursorMz }).ToArray();
public void AddPeak(double mass, double intensity, string comment = null) {
Scan.AddPeak(mass, intensity, comment);
diff --git a/src/MSDIAL5/SpectrumViewer/View/ViewTemplates.xaml b/src/MSDIAL5/SpectrumViewer/View/ViewTemplates.xaml
index b7bc12db9..687345977 100644
--- a/src/MSDIAL5/SpectrumViewer/View/ViewTemplates.xaml
+++ b/src/MSDIAL5/SpectrumViewer/View/ViewTemplates.xaml
@@ -370,12 +370,13 @@
-
+
+
+
+
+
+
+
cycle() {
RemoveScanCommand = new ReactiveCommand()
.WithSubscribe(model.RemoveScan)
.AddTo(Disposables);
+
+ LabelProperty = new ReactiveProperty(string.Empty).AddTo(Disposables);
}
public SplitSpectrumsModel Model { get; }
@@ -131,5 +133,7 @@ public void AddScan(IMSScanProperty scan) {
public ReactiveCommand ShiftScanCommand { get; }
public ReactiveCommand RemoveScanCommand { get; }
+
+ public ReactiveProperty LabelProperty { get; }
}
}