public void Close(TabFileItem tabItem) { int index = TabFileItems.IndexOf(tabItem); FileNames.Remove(tabItem.FileName); TabFileItems.Remove(tabItem); tabItem.TailService.Dispose(); if (TabFileItems.Count == 0) { Buffer.Clear(); } SelectedTab = TabFileItems.Any() ? TabFileItems[Math.Min(index, TabFileItems.Count - 1)] : null; }
private void MoveTab(int delta) { var index = (TabFileItems.IndexOf(SelectedTab) + delta) % TabFileItems.Count; SelectedTab = TabFileItems[index]; }