public override void Execute(IActionContext context) { // ShowCorrespondence can be issued on resources of both "Contact" // and "ContactName" types. IResource contact = context.SelectedResources[0]; if (contact.Type == "ContactName") { contact = contact.GetLinkProp(Core.ContactManager.Props.LinkBaseContact); } Core.UIManager.BeginUpdateSidebar(); IResource ws = Core.WorkspaceManager.ActiveWorkspace; if (ws != null && !contact.HasLink("InWorkspace", ws)) { Core.WorkspaceManager.ActiveWorkspace = null; } Core.TabManager.CurrentTabId = "All"; Core.LeftSidebar.ActivateViewPane(StandardViewPanes.Correspondents); Core.UIManager.EndUpdateSidebar(); AbstractViewPane viewPane = Core.LeftSidebar.GetPane(StandardViewPanes.Correspondents); viewPane.SelectResource(contact, false); }
public void Execute(IActionContext context) { IResource resultContact; if (context.SelectedResources.Count == 1) { IResourceList candidates = ContactManager.GetContactsForMerging(context.SelectedResources[0]); if (candidates.Count == 0) { candidates = null; } resultContact = ShowMergeDialog(candidates, context.SelectedResources); } else { resultContact = ShowMergeDialog(context.SelectedResources, null); } if (resultContact != null) { if (Core.TabManager.CurrentTab.Name == "Contacts") { Core.ResourceBrowser.SelectResource(resultContact); } else { AbstractViewPane pane = Core.LeftSidebar.GetPane(StandardViewPanes.Correspondents); if (pane != null) { pane.SelectResource(resultContact, false); } } } }
public void DisplayResourceInContext(IResource res) { Core.UIManager.BeginUpdateSidebar(); if (!Core.TabManager.ActivateTab("Contacts")) { return; } IResource addressBook = res.GetLinkProp(AddressBook.PropInAddressBook); if (addressBook != null) { Core.LeftSidebar.ActivateViewPane("AddressBooks"); Core.UIManager.EndUpdateSidebar(); AbstractViewPane pane = Core.LeftSidebar.GetPane("AddressBooks"); if (pane != null) { pane.SelectResource(addressBook, false); } } else { IResource allView = Core.ResourceStore.FindUniqueResource("SearchView", Core.Props.Name, "All"); if (allView != null) { Core.LeftSidebar.ActivateViewPane(StandardViewPanes.ViewsCategories); Core.UIManager.EndUpdateSidebar(); Core.LeftSidebar.DefaultViewPane.SelectResource(allView); } } Core.ResourceBrowser.SelectResource(res); }
public void DisplayResourceInContext(IResource res) { if (!res.HasProp(Core.Props.Parent)) { if (MessageBox.Show(Core.MainWindow, "You are not subscribed to " + res.DisplayName + ". Would you like to subscribe?", "Subscribe to Newsgroup", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { SubscribeForm.SubscribeToGroups(); } } else { Core.UIManager.BeginUpdateSidebar(); try { if (!Core.TabManager.ActivateTab("News")) { return; } Core.LeftSidebar.ActivateViewPane("Newsgroups"); } finally { Core.UIManager.EndUpdateSidebar(); } AbstractViewPane pane = Core.LeftSidebar.GetPane("Newsgroups"); if (pane != null) { pane.SelectResource(res, false); } } }
private static void RedisplayResource(IResource res) { AbstractViewPane viewPane = Core.LeftSidebar.GetPane(Core.LeftSidebar.ActivePaneId); if (viewPane.SelectedResource == res) { // force redisplay of resource viewPane.SelectResource(res, false); } }
/// <summary> /// Selects the default resource for the specified tab. /// </summary> private void SelectDefaultView(string tabID) { AbstractViewPane defaultPane = _querySidebar.DefaultViewPane as AbstractViewPane; IResource res = (IResource)_defaultSelectedResources[tabID]; if (res != null) { string paneID = _querySidebar.GetResourceStructurePaneId(tabID); if (paneID != null) { AbstractViewPane viewPane = _querySidebar.GetPane(paneID); if (viewPane != null && viewPane.SelectResource(res, false)) { viewPane.Select(); return; } } if (defaultPane.SelectResource(res, false)) { _querySidebar.Select(); return; } } if (_defaultViewResource != null) { if (defaultPane.SelectResource(_defaultViewResource, false)) { defaultPane.Select(); return; } } Core.ResourceBrowser.DisplayResourceList(null, Core.ResourceStore.EmptyResourceList, "", null); }
private void UpdateResourcePanes() { if (Core.TabManager.CurrentTab.Name == "Contacts") { Core.ResourceBrowser.SelectResource(resultContacts[0]); } else { AbstractViewPane pane = Core.LeftSidebar.GetPane(StandardViewPanes.Correspondents); if (pane != null && resultContacts.Count > 0) { pane.SelectResource(resultContacts[0], false); } } }
public void ActivatePane(string paneId) { AbstractViewPane pane = GetPane(paneId); pane.Focus(); // hack (see #5371, #5746) IResource selResource = pane.SelectedResource; if (selResource != null) { pane.SelectResource(selResource, false); } _paneButtons.SetButtonPressed(paneId, true); }
private static void OnPaneCaptionClick(object sender, EventArgs e) { PaneCaption caption = (PaneCaption)sender; AbstractViewPane pane = ((PaneData)caption.Tag).Pane; if (!pane.ContainsFocus) { pane.Focus(); // HACK: Remove when all panes are converted to JetListView if (!(pane is ResourceTreePaneBase)) { IResource node = pane.SelectedResource; if (node != null) { pane.SelectResource(node, false); } } } }
public bool Show(ResourceBrowser owner) { if (_discarded) { return(false); } Core.UIManager.BeginUpdateSidebar(); if (!Core.TabManager.ActivateTab(_activeTab)) { Core.UIManager.EndUpdateSidebar(); return(false); } if (_ownerResource != null && _activeSidebarPane != null) { AbstractViewPane pane = Core.LeftSidebar.ActivateViewPane(_activeTab, _activeSidebarPane); Core.UIManager.EndUpdateSidebar(); if (pane == null) { // DoEvents() could have happened when activating pane and caused switch to other pane // (OM-11136) return(false); } pane.SelectResource(_ownerResource, false); if (_selectedResource != null) { owner.SelectResource(_selectedResource); } return(true); } else { Core.UIManager.EndUpdateSidebar(); return(DoShow(owner)); } }