public void SetPersonalViewUrl(SPView spView, string value) { if (spView == null) { return; } string listUrl = spView.ParentList.Url(); TOut settings = this.GetSettings(); CustomViewSettings listSettings = settings.ViewSettings.FirstOrDefault(s => s.ListUrl == listUrl); if (listSettings == null) { CustomViewSettings customViewSettings = new CustomViewSettings { ListUrl = listUrl, CustomViews = new List <CustomViews> { new CustomViews { PersonalViewUrl = value, ViewUrl = spView.Url, ViewId = spView.ID, IsChanget = true, SchemaXml = spView.SchemaXml } } }; settings.ViewSettings.Add(customViewSettings); } else { CustomViews customView = listSettings.CustomViews.FirstOrDefault(v => v.ViewId == spView.ID); if (customView == null) { CustomViews customViews = new CustomViews { PersonalViewUrl = value, ViewUrl = spView.Url, ViewId = spView.ID, IsChanget = true, SchemaXml = spView.SchemaXml }; listSettings.CustomViews.Add(customViews); } else { customView.PersonalViewUrl = value; customView.IsChanget = true; customView.SchemaXml = spView.SchemaXml; } } this.SetSettings(settings); }
public NetworkTablesRoot( [Import] INetworkTablesInterface ntInterface, [Import] IRootTablesList rootTablesList, [Import] IConnectionPrompts prompts, [ImportMany] IEnumerable <Lazy <IRootTableProcessorFactory, IDashboardTypeMetadata> > rootTableFactories, [ImportMany] IEnumerable <Lazy <IViewProcessorFactory, ICustomViewFactoryMetadata> > customViewFactories) { this.rootTableFactories = rootTableFactories; this.ntInterface = ntInterface; this.rootTablesList = rootTablesList; foreach (var factory in customViewFactories) { CustomViews.Add(new CustomViewEntry(factory.Metadata.Name, new Command(() => CurrentlyViewedRootTable.AddViewProcessorToView($"{factory.Metadata.Name}_{Guid.NewGuid()}", factory.Value.Create())))); } ntInterface.OnClientConnectionAttempt += (obj, args) => SetupRootTables(); ntInterface.OnConnectionStatus += (obj, args) => Connected = args.Connected; ntInterface.OnDisconnect += (obj, args) => Connected = false; ConnectToRoboRioCommand = new Command(() => { var team = prompts.PromptTeamNumber(); if (team != null) { ntInterface.Disconnect(); ntInterface.ConnectToTeam(team.Value); } }); ConnectToServerCommand = new Command(() => { var server = prompts.PromptServerName(); if (server != null) { ntInterface.Disconnect(); ntInterface.ConnectToServer(server); } }); SetupRootTables(); }
public string PersonalViewUrl(SPView spView) { if (spView == null) { return(string.Empty); } string listUrl = spView.ParentList.Url(); TOut settings = this.GetSettings(); CustomViewSettings listSettings = settings.ViewSettings.FirstOrDefault(s => s.ListUrl == listUrl); if (listSettings == null) { return(string.Empty); } CustomViews customView = listSettings.CustomViews.FirstOrDefault(v => v.ViewId == spView.ID); if (customView == null) { return(string.Empty); } return(customView.PersonalViewUrl); }
/// <summary> /// Возвращает значение свойства <see cref="IsChanged" /> для отображения. /// </summary> /// <param name="spView">Отображение для которого запрашиваются настройки.</param> /// <returns>Булевое значение свойства <see cref="IsChanged" /></returns> /// <remarks>Если настройки не существуют они будут заданны автоматически и будет присвоенно значение по умолчанию.</remarks> public bool IsChanged(SPView spView) { if (spView == null) { return(false); } string listUrl = spView.ParentList.Url(); TOut settings = this.GetSettings(); CustomViewSettings listSettings = settings.ViewSettings.FirstOrDefault(s => s.ListUrl == listUrl); if (listSettings == null) { return(false); } CustomViews customView = listSettings.CustomViews.FirstOrDefault(v => v.ViewId == spView.ID); if (customView == null) { return(false); } return(customView.IsChanget && string.Equals(spView.SchemaXml, customView.SchemaXml, StringComparison.InvariantCultureIgnoreCase)); }