aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.DB/ViewModels/CatsViewVM.cs
blob: e8d0bda10b9feb85ac83975c490931871a2890e3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
using Microsoft.Win32;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Tango.Core.Commands;
using Tango.BL.Entities;
using Tango.MachineStudio.Common.Notifications;

namespace Tango.MachineStudio.DB.ViewModels
{
    public class CatsViewVM : DbTableViewModel<Cat>
    {
        public CatsViewVM(INotificationProvider notification) : base(notification)
        {
            SelectDataFileCommand = new RelayCommand(SelectDataFile);
            
        }

        public RelayCommand SelectDataFileCommand { get; set; }

        private void SelectDataFile()
        {
            OpenFileDialog dlg = new OpenFileDialog();
            dlg.Filter = "Color Adjustment Files|*.CAT";
            dlg.Title = "Select Color Adjustment File";
            if (dlg.ShowDialog().Value)
            {
                try
                {
                    EditEntity.Data = File.ReadAllBytes(dlg.FileName);
                }
                catch (Exception ex)
                {
                    _notification.ShowError(ex.Message);
                }
            }
        }
    }
}
/span>NotSupportedException(); } /// <inheritdoc/> protected override void RemoveItem(int index) { throw new NotSupportedException(); } /// <inheritdoc/> protected override void SetItem(int index, T item) { throw new NotSupportedException(); } internal void InsertItemAt(int index, T item) { base.InsertItem(index, item); if (CollectionChanged != null) OnCollectionChanged(new NotifyCollectionChangedEventArgs(NotifyCollectionChangedAction.Add, new T[] { item }.ToList(), index)); } internal void RemoveItemAt(int index) { T removed = this[index]; base.RemoveItem(index); if (CollectionChanged != null) OnCollectionChanged(new NotifyCollectionChangedEventArgs(NotifyCollectionChangedAction.Remove, new T[] { removed }.ToList(), index)); } internal void InsertItemsAt(int index, IList<T> items) { for(int i = 0; i < items.Count; i++) { base.InsertItem(index + i, items[i]); } if (CollectionChanged != null) OnCollectionChanged(new NotifyCollectionChangedEventArgs(NotifyCollectionChangedAction.Add, (IList)items, index)); } internal void RemoveItemsAt(int index, int count) { List<T> removed = new List<T>(); for(int i = 0; i < count; i++) { removed.Add(this[index]); base.RemoveItem(index); } if (CollectionChanged != null) OnCollectionChanged(new NotifyCollectionChangedEventArgs(NotifyCollectionChangedAction.Remove, (IList)removed, index)); } } }