using System.Windows.Media.Imaging; using CommunityToolkit.Mvvm.ComponentModel; namespace Livia.Models.Data; public class MosaicImageData(BitmapImage image, string displayName, MosaicImageInfo? colorBarInfo) : ObservableObject { public BitmapImage Image { get; } = image; public bool IsChecked { get => _isChecked; set => SetProperty(ref _isChecked, value); } public bool ShowJumpToDataGridButton { get; set; } public bool ShowMosaicRoiOverlayTip { get; set; } public string DisplayName { get => _displayName; set => SetProperty(ref _displayName, value); } public bool UseColorBar => MosaicImageInfo.Range != null; public MosaicImageInfo MosaicImageInfo { get; } = colorBarInfo ?? new MosaicImageInfo { Range = new List { 0, 0 }, Unit = "" }; private bool _isChecked; private string _displayName = displayName; //TODO::click effect for radio buttons(use material button) }