Beispiel #1
0
        public override void DeleteViews(ViewGroupId groupId, IEnumerable <string> viewNames)
        {
            var viewNameSet = new HashSet <string>(viewNames);

            if (Equals(groupId, PersistedViews.MainGroup.Id))
            {
                ChangeDocumentViewSpecList(viewSpecList => viewSpecList.DeleteViews(viewNameSet));
            }
            base.DeleteViews(groupId, viewNameSet);
        }
Beispiel #2
0
        public override void AddOrReplaceViews(ViewGroupId groupId, IEnumerable <ViewSpec> viewSpecs)
        {
            var viewSpecsArray = ImmutableList.ValueOf(viewSpecs);

            if (Equals(groupId, PersistedViews.MainGroup.Id))
            {
                ChangeDocumentViewSpecList(viewSpecList => viewSpecList.AddOrReplaceViews(viewSpecsArray));
            }
            base.AddOrReplaceViews(groupId, viewSpecsArray);
        }
        public override ViewSpecList GetViewSpecList(ViewGroupId viewGroup)
        {
            ViewSpecList viewSpecList;

            if (_viewSpecLists.TryGetValue(viewGroup, out viewSpecList))
            {
                return(viewSpecList);
            }
            return(base.GetViewSpecList(viewGroup));
        }
Beispiel #4
0
        public override ViewSpecList GetViewSpecList(ViewGroupId viewGroup)
        {
            ViewSpecList viewSpecList = base.GetViewSpecList(viewGroup);

            if (Equals(viewGroup, ViewGroup.BUILT_IN.Id))
            {
                viewSpecList = new ViewSpecList(viewSpecList.ViewSpecs, GetBuiltInViewLayouts());
            }

            return(viewSpecList);
        }
Beispiel #5
0
 public override bool TryRenameView(ViewGroupId groupId, string oldName, string newName)
 {
     if (!base.TryRenameView(groupId, oldName, newName))
     {
         return(false);
     }
     if (Equals(groupId, PersistedViews.MainGroup.Id))
     {
         ChangeDocumentViewSpecList(viewSpecList => viewSpecList.RenameView(oldName, newName));
     }
     return(true);
 }
Beispiel #6
0
        protected override void SaveViewSpecList(ViewGroupId viewGroup, ViewSpecList viewSpecList)
        {
            Settings.Default.PersistedViews.SetViewSpecList(viewGroup, viewSpecList);
            if (Equals(viewGroup, PersistedViews.MainGroup.Id))
            {
                ChangeDocumentViewSpecList(docViewSpecList =>
                {
                    var newViews = new Dictionary <string, ViewSpec>();
                    foreach (var viewSpec in viewSpecList.ViewSpecs)
                    {
                        newViews[viewSpec.Name] = viewSpec;
                    }
                    var newDocViews = new List <ViewSpec>();
                    var newLayouts  = new List <ViewLayoutList>();
                    foreach (var oldDocView in docViewSpecList.ViewSpecs)
                    {
                        ViewSpec newDocView;
                        if (newViews.TryGetValue(oldDocView.Name, out newDocView))
                        {
                            newDocViews.Add(newDocView);
                            ViewLayoutList viewLayoutList = viewSpecList.GetViewLayouts(oldDocView.Name);
                            if (!viewLayoutList.IsEmpty)
                            {
                                newLayouts.Add(viewLayoutList);
                            }
                        }
                    }
                    return(new ViewSpecList(newDocViews, newLayouts));
                });

                var skylineWindow = SkylineDataSchema.SkylineWindow;
                if (skylineWindow != null)
                {
                    skylineWindow.ModifyDocument(Resources.SkylineViewContext_SaveViewSpecList_Change_Document_Reports, doc =>
                    {
                        var oldViewNames = new HashSet <string>(
                            doc.Settings.DataSettings.ViewSpecList.ViewSpecs.Select(spec => spec.Name));
                        var newViewSpecList = viewSpecList.Filter(spec => oldViewNames.Contains(spec.Name));
                        if (Equals(newViewSpecList, doc.Settings.DataSettings.ViewSpecList))
                        {
                            return(doc);
                        }
                        return(doc.ChangeSettings(doc.Settings.ChangeDataSettings(
                                                      doc.Settings.DataSettings.ChangeViewSpecList(newViewSpecList))));
                    }, AuditLogEntry.SettingsLogFunction);
                }
            }
        }
Beispiel #7
0
 private bool CanRememberView(ViewGroupId viewGroupId)
 {
     // ReSharper disable once ConditionIsAlwaysTrueOrFalse
     return(!Equals(viewGroupId, default(ViewGroupId)) && !Equals(viewGroupId, ViewGroup.BUILT_IN.Id));
 }
Beispiel #8
0
 public override ViewSpecList GetViewSpecList(ViewGroupId viewGroup)
 {
     return(base.GetViewSpecList(viewGroup)
            ?? SortViewSpecList(Settings.Default.PersistedViews.GetViewSpecList(viewGroup))
            ?? ViewSpecList.EMPTY);
 }
 protected override void SaveViewSpecList(ViewGroupId viewGroup, ViewSpecList viewSpecList)
 {
     _viewSpecLists[viewGroup] = viewSpecList;
 }
Beispiel #10
0
 private bool CanRememberView(ViewGroupId viewGroupId)
 {
     return(!Equals(viewGroupId, default(ViewGroupId)) && !Equals(viewGroupId, ViewGroup.BUILT_IN.Id));
 }
Beispiel #11
0
 public override ViewSpecList GetViewSpecList(ViewGroupId viewGroup)
 {
     return(base.GetViewSpecList(viewGroup)
            ?? Settings.Default.TopographViewGroups.GetViewSpecList(viewGroup)
            ?? ViewSpecList.EMPTY);
 }
Beispiel #12
0
 protected override void SaveViewSpecList(ViewGroupId viewGroupId, ViewSpecList viewSpecList)
 {
     Settings.Default.Reload();
     Settings.Default.TopographViewGroups.SetViewSpecList(viewGroupId, viewSpecList);
     Settings.Default.Save();
 }