public void RemoveWatch(params int[] indexes) { HashSet<int> set = new HashSet<int>(indexes); _watchEntries = _watchEntries.Where((el, index) => !set.Contains(index)).ToList(); //_previousValues = _previousValues.Where((el, index) => !set.Contains(index)).ToList(); WatchChanged?.Invoke(null, EventArgs.Empty); }
public void AddWatch(params string[] expressions) { foreach(string expression in expressions) { _watchEntries.Add(expression); } WatchChanged?.Invoke(null, EventArgs.Empty); }
public void UpdateWatch(int index, string expression) { if(string.IsNullOrWhiteSpace(expression)) { RemoveWatch(index); } else { if(index >= _watchEntries.Count) { _watchEntries.Add(expression); } else { _watchEntries[index] = expression; } WatchChanged?.Invoke(null, EventArgs.Empty); } }