public IEnumerable <object> Restore(DocumentTabService documentTabService, IDocumentTabContentFactoryService documentTabContentFactoryService, ITabGroupService mgr) { mgr.IsHorizontal = IsHorizontal; for (int i = 0; i < TabGroups.Count; i++) { var stg = TabGroups[i]; var g = i == 0 ? mgr.ActiveTabGroup ?? mgr.Create() : mgr.Create(); yield return(null); foreach (var o in stg.Restore(documentTabService, documentTabContentFactoryService, g)) { yield return(o); } } if (StackedContentState != null) { ((TabGroupService)mgr).StackedContentState = StackedContentState; } var ary = mgr.TabGroups.ToArray(); if ((uint)Index < (uint)ary.Length) { mgr.ActiveTabGroup = ary[Index]; } yield return(null); }
public IToolWindowGroup Create() => new ToolWindowGroup(this, tabGroupService.Create());
public IEnumerable<object> Restore(DocumentTabService documentTabService, IDocumentTabContentFactoryService documentTabContentFactoryService, ITabGroupService mgr) { mgr.IsHorizontal = IsHorizontal; for (int i = 0; i < TabGroups.Count; i++) { var stg = TabGroups[i]; var g = i == 0 ? mgr.ActiveTabGroup ?? mgr.Create() : mgr.Create(); yield return null; foreach (var o in stg.Restore(documentTabService, documentTabContentFactoryService, g)) yield return o; } if (StackedContentState != null) ((TabGroupService)mgr).StackedContentState = StackedContentState; var ary = mgr.TabGroups.ToArray(); if ((uint)Index < (uint)ary.Length) mgr.ActiveTabGroup = ary[Index]; yield return null; }