/** * Creates a default view pane for the specified tab ID. */ private void CreateDefaultPane(string tabId, string[] tabResourceTypes, int tabLinkType) { ViewsCategoriesPane pane = new ViewsCategoriesPane(); pane.RootResource = Core.ResourceTreeManager.ResourceTreeRoot; ContentTypeFilter filter = new ContentTypeFilter(); if (tabResourceTypes != null) { string[] filterTypes = new string [tabResourceTypes.Length + 1]; filterTypes [0] = "WorkspaceOtherView"; Array.Copy(tabResourceTypes, 0, filterTypes, 1, tabResourceTypes.Length); filter.SetFilter(filterTypes, tabLinkType); } else { filter.SetFilter(tabResourceTypes, tabLinkType); } pane.AddContentTypes(tabResourceTypes); pane.AddNodeFilter(filter); pane.ShowWorkspaceOtherView = true; AddPane(tabId, StandardViewPanes.ViewsCategories, pane, "Views and Categories", _defaultPaneImage); }
internal void PrepareData(IWin32Window ownerWindow, IResourceList resList) { CategoryManager mgr = Core.CategoryManager as CategoryManager; _resList = resList; _propCategory = mgr.PropCategory; RestoreSettings(); _contentTypes = resList.GetAllTypes(); _contentTypeFilter = new ContentTypeFilter(); _contentTypeFilter.SetFilter(_contentTypes, -1); _categoryTree.AddNodeFilter(_contentTypeFilter); _categoryTree.AddNodeFilter(new CategoryNodeFilter()); _categoryTree.ThreeStateCheckboxes = true; _categoryTree.ParentProperty = Core.Props.Parent; _categoryTree.OpenProperty = mgr.PropCategoryExpanded; _categoryTree.RootResource = Core.ResourceTreeManager.ResourceTreeRoot; _categoryTree.ShowContextMenu = false; if (resList.Count == 1) { _lblResource.Resource = resList [0]; } else { _lblCategoriesFor.Text = "Categories for " + resList.Count + " resources:"; _lblResource.Visible = false; } if (_categoryTree.SelectedNode == null && _categoryTree.Nodes.Count > 0) { _categoryTree.SelectedNode = _categoryTree.Nodes [0]; } UpdateButtonState(); _categoryTree.Focus(); }