private void LoadWebresources(LoadResourcesSettings settings) { tv.Enabled = false; tv.OrganizationMajorVersion = ConnectionDetail?.OrganizationMajorVersion ?? -1; tv.Service = Service; CloseOpenedContents(); WorkAsync(new WorkAsyncInfo("Loading web resources...", e => { var request = new RetrieveProvisionedLanguagesRequest(); var response = (RetrieveProvisionedLanguagesResponse)Service.Execute(request); var args = (LoadResourcesSettings)e.Argument; var items = Webresource.RetrieveWebresources(this, Service, args.Solution?.Id ?? Guid.Empty, args.TypesToload, args.FilterByLcid, response.RetrieveProvisionedLanguages); e.Result = items; WebresourcesCache.Clear(); foreach (var item in items) { WebresourcesCache.Add(item); } }) { AsyncArgument = settings, PostWorkCallBack = e => { tv.Enabled = true; tv.DisplayNodes((IEnumerable <Webresource>)e.Result, settings.Solution); if (settings.Solution != null) { tsmiReloadFromCurrentSolution.Text = string.Format( tsmiReloadFromCurrentSolution.Tag.ToString(), settings.Solution.GetAttributeValue <string>("friendlyname"), settings.Solution.GetAttributeValue <string>("version")); tsmiReloadFromCurrentSolution.Visible = true; } else { tsmiReloadFromCurrentSolution.Visible = false; } } }); }
public void LoadWebresourcesGeneral(bool fromSolution) { lastSettings = new LoadResourcesSettings(); // If from solution, display the solution picker so that user can // select the solution containing the web resources he wants to // display if (fromSolution) { var sPicker = new SolutionPicker(Service) { StartPosition = FormStartPosition.CenterParent }; if (sPicker.ShowDialog(ParentForm) == DialogResult.OK) { lastSettings.Solution = sPicker.SelectedSolution; lastSettings.LoadAllWebresources = sPicker.LoadAllWebresources; if (lastSettings.LoadAllWebresources) { lastSettings.FilterByLcid = sPicker.FilterByLcid; } } else { return; } } if (!lastSettings.LoadAllWebresources) { // Display web resource types selection dialog var dialog = new WebResourceTypeSelectorDialog(ConnectionDetail?.OrganizationMajorVersion ?? -1); if (dialog.ShowDialog(ParentForm) == DialogResult.OK) { lastSettings.TypesToload = dialog.TypesToLoad; lastSettings.FilterByLcid = dialog.FilterByLcid; } else { return; } } LoadWebresources(lastSettings); }