/// <summary> /// Create the child nodes and register their events. /// </summary> /// <param name="sender">The sender.</param> /// <param name="e">The ExplorerNodeMenuItemsRequestedEventArgs.</param> void NodeType_NodeMenuItemsRequested(object sender, ExplorerNodeMenuItemsRequestedEventArgs e) { //Add the child nodes if (EnabledExtensionsOptionsPage.GetSetting <bool>(EnabledExtensionsOptions.ContentTypeCopyID, true)) { IMenuItem copyIdItem = e.MenuItems.Add(CKSProperties.ContentTypeNodeExtension_CopyIdNodeName, 1); copyIdItem.Click += new EventHandler <MenuItemEventArgs>(CopyIdItem_Click); } if (EnabledExtensionsOptionsPage.GetSetting <bool>(EnabledExtensionsOptions.ImportContentType, true)) { if (DTEManager.ActiveSharePointProject != null) { IMenuItem importContentTypeItem = e.MenuItems.Add(CKSProperties.ContentTypeNodeExtension_ImportNodeName, 2); importContentTypeItem.Click += new EventHandler <MenuItemEventArgs>(ImportContentTypeItem_Click); } } if (EnabledExtensionsOptionsPage.GetSetting <bool>(EnabledExtensionsOptions.CreatePageLayoutFromContentType, true)) { IMenuItem createPageLayoutMenuItem = e.MenuItems.Add(CKSProperties.ContentTypeNodeExtension_CreatePublishingPageLayoutName); createPageLayoutMenuItem.Click += new EventHandler <Microsoft.VisualStudio.SharePoint.MenuItemEventArgs>(CreatePageLayoutContentTypeNodeExtension_Click); IContentTypeNodeInfo ctInfo = e.Node.Annotations.GetValue <IContentTypeNodeInfo>(); createPageLayoutMenuItem.IsEnabled = e.Node.Context.SharePointConnection.ExecuteCommand <string, bool>(ContentTypeSharePointCommandIds.IsPublishingContentTypeCommand, ctInfo.Name); } }
/// <summary> /// Handles the NodeChildrenRequested event of the nodeType control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="Microsoft.VisualStudio.SharePoint.Explorer.ExplorerNodeEventArgs"/> instance containing the event data.</param> void nodeType_NodeChildrenRequested(object sender, ExplorerNodeEventArgs e) { if (EnabledExtensionsOptionsPage.GetSetting <bool>(EnabledExtensionsOptions.SiteColumnsGroupedView, true)) { e.Node.ChildNodes.AddFolder(CKSProperties.SiteColumnsSiteNodeExtension_SiteColumnsNode, CKSProperties.SiteColumns.ToBitmap(), AddSiteColumnsGroups); } }
/// <summary> /// Initializes the SharePoint project extension. /// </summary> /// <param name="projectService">An instance of SharePoint project service.</param> public void Initialize(ISharePointProjectService projectService) { if (EnabledExtensionsOptionsPage.GetSetting <bool>(EnabledExtensionsOptions.CopyAssemblyName, true)) { projectService.ProjectMenuItemsRequested += new EventHandler <SharePointProjectMenuItemsRequestedEventArgs>(projectService_ProjectMenuItemsRequested); } }
/// <summary> /// Initializes the SharePoint project extension. /// </summary> /// <param name="projectService">An instance of SharePoint project service.</param> public void Initialize(ISharePointProjectService projectService) { if (EnabledExtensionsOptionsPage.GetSetting <bool>(EnabledExtensionsOptions.ActivateSelectedFeatures, true)) { projectService.ProjectMenuItemsRequested += new EventHandler <SharePointProjectMenuItemsRequestedEventArgs>(projectService_ProjectMenuItemsRequested); } }
/// <summary> /// Handles the NodeChildrenRequested event of the nodeType control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="Microsoft.VisualStudio.SharePoint.Explorer.ExplorerNodeEventArgs"/> instance containing the event data.</param> void nodeType_NodeChildrenRequested(object sender, ExplorerNodeEventArgs e) { if (EnabledExtensionsOptionsPage.GetSetting <bool>(EnabledExtensionsOptions.ViewListEventReceivers, true)) { e.Node.ChildNodes.AddFolder("Event Receivers", CKSProperties.EventReceiver.ToBitmap(), CreateListEventReceiversNodes); } }
/// <summary> /// Handles the NodeMenuItemsRequested event of the nodeType control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="Microsoft.VisualStudio.SharePoint.Explorer.ExplorerNodeMenuItemsRequestedEventArgs"/> instance containing the event data.</param> void nodeType_NodeMenuItemsRequested(object sender, ExplorerNodeMenuItemsRequestedEventArgs e) { if (EnabledExtensionsOptionsPage.GetSetting <bool>(EnabledExtensionsOptions.ListGenerateEntityClasses, true)) { e.MenuItems.Add("Generate entity classes").Click += new EventHandler <MenuItemEventArgs>(SPMetalListNodeExtension_Click); } }
/// <summary> /// Initializes the SharePoint project extension. /// </summary> /// <param name="projectService">An instance of SharePoint project service.</param> public void Initialize(ISharePointProjectService projectService) { if (EnabledExtensionsOptionsPage.GetSetting <bool>(EnabledExtensionsOptions.SPIReferences, true)) { foreach (ISharePointProjectItemType spit in projectService.ProjectItemTypes.Values) { spit.ProjectItemMenuItemsRequested += new EventHandler <SharePointProjectItemMenuItemsRequestedEventArgs>(spit_ProjectItemMenuItemsRequested); } } }
/// <summary> /// Handles the NodeMenuItemsRequested event of the typeDefinition control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="Microsoft.VisualStudio.SharePoint.Explorer.ExplorerNodeMenuItemsRequestedEventArgs"/> instance containing the event data.</param> void typeDefinition_NodeMenuItemsRequested(object sender, ExplorerNodeMenuItemsRequestedEventArgs e) { if (EnabledExtensionsOptionsPage.GetSetting <bool>(EnabledExtensionsOptions.ImportContentTypeGroup, true)) { if (DTEManager.ActiveSharePointProject != null) { IMenuItem importContentTypesMenuItem = e.MenuItems.Add(CKSProperties.ContentTypeGroupNodeTypeProvider_ImportContentTypes); importContentTypesMenuItem.Click += new EventHandler <MenuItemEventArgs>(importContentTypesMenuItem_Click); } } }
/// <summary> /// Initializes the SharePoint project extension. /// </summary> /// <param name="projectService">Instance of SharePoint project service.</param> public void Initialize(ISharePointProjectService projectService) { if (EnabledExtensionsOptionsPage.GetSetting <bool>(EnabledExtensionsOptions.CancelAddingSPIs, true)) { foreach (ISharePointProjectItemType type in projectService.ProjectItemTypes.Values) { type.ProjectItemAdded += new EventHandler <SharePointProjectItemEventArgs>(spiType_ProjectItemAdded); type.ProjectItemInitialized += new EventHandler <SharePointProjectItemEventArgs>(spiType_ProjectItemInitialized); } } }
/// <summary> /// Initializes the new node type. /// </summary> /// <param name="typeDefinition">The definition of the new node type.</param> public virtual void InitializeType(IExplorerNodeTypeDefinition typeDefinition) { typeDefinition.DefaultIcon = CKSProperties.icgen.ToBitmap(); typeDefinition.IsAlwaysLeaf = true; if (EnabledExtensionsOptionsPage.GetSetting <bool>(EnabledExtensionsOptions.FileProperties, true)) { typeDefinition.NodePropertiesRequested += NodePropertiesRequested; } if (EnabledExtensionsOptionsPage.GetSetting <bool>(EnabledExtensionsOptions.FileOperations, true)) { typeDefinition.NodeMenuItemsRequested += NodeMenuItemsRequested; } }
/// <summary> /// Handles the NodeChildrenRequested event of the nodeType control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="Microsoft.VisualStudio.SharePoint.Explorer.ExplorerNodeEventArgs"/> instance containing the event data.</param> void nodeType_NodeChildrenRequested(object sender, ExplorerNodeEventArgs e) { //Only perform this action if the site is not hanging off the connection node //The connection node already has a content types node if (EnabledExtensionsOptionsPage.GetSetting <bool>(EnabledExtensionsOptions.ContentTypesGroupedView, true)) { if (e.Node.ParentNode.NodeType.Id != ExplorerNodeTypes.ConnectionNode) { e.Node.ChildNodes.AddFolder(CKSProperties.ContentTypesSiteNodeExtension_ContentTypesNode, CKSProperties.ContentTypes.ToBitmap(), AddContentTypeGroups); } else { AddContentTypeGroupsToExistingContentTypesNode(e.Node); } } }
/// <summary> /// Create the child nodes. /// </summary> /// <param name="sender">The sender.</param> /// <param name="e">The ExplorerNodeEventArgs.</param> void NodeType_NodeChildrenRequested(object sender, ExplorerNodeEventArgs e) { if (EnabledExtensionsOptionsPage.GetSetting <bool>(EnabledExtensionsOptions.ViewFeatureDependencies, true)) { e.Node.ChildNodes.AddFolder(CKSProperties.FeatureNodeExtension_DependenciesFolderNodeName, CKSProperties.FolderNode.ToBitmap(), new Action <IExplorerNode>(FeatureDependencyNodeTypeProvider.CreateFeatureDependencyNodes)); } if (EnabledExtensionsOptionsPage.GetSetting <bool>(EnabledExtensionsOptions.ViewFeatureElements, true)) { e.Node.ChildNodes.AddFolder(CKSProperties.FeatureNodeExtension_ElementsFolderNodeName, CKSProperties.FolderNode.ToBitmap(), new Action <IExplorerNode>(FeatureElementNodeTypeProvider.CreateFeatureElementNodes)); } }
/// <summary> /// Process the node children request to get the theme nodes. /// </summary> /// <param name="sender">The sender object.</param> /// <param name="e">The ExplorerNodeEventArgs object.</param> void nodeType_NodeChildrenRequested(object sender, ExplorerNodeEventArgs e) { Uri siteUrl = null; IExplorerNode siteNode = e.Node; IExplorerSiteNodeInfo siteInfo = siteNode.Annotations.GetValue <IExplorerSiteNodeInfo>(); if (siteInfo != null && siteInfo.IsConnectionRoot) { siteUrl = siteInfo.Url; } if (EnabledExtensionsOptionsPage.GetSetting <bool>(EnabledExtensionsOptions.ListThemes, true)) { e.Node.ChildNodes.AddFolder(CKSProperties.SiteNodeExtension_WebTemplatesNodeName, CKSProperties.WebTemplatesNode.ToBitmap(), CreateWebTemplateCategories); } }
/// <summary> /// Handles the NodeChildrenRequested event of the nodeType control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="ExplorerNodeEventArgs" /> instance containing the event data.</param> void nodeType_NodeChildrenRequested(object sender, ExplorerNodeEventArgs e) { Uri siteUrl = null; IExplorerNode siteNode = e.Node; IExplorerSiteNodeInfo siteInfo = siteNode.Annotations.GetValue <IExplorerSiteNodeInfo>(); if (siteInfo != null && siteInfo.IsConnectionRoot) { siteUrl = siteInfo.Url; } if (EnabledExtensionsOptionsPage.GetSetting <bool>(EnabledExtensionsOptions.ViewDesignCatalog, true)) { e.Node.ChildNodes.AddFolder(CKSProperties.SiteNodeExtension_DesignCatalogNodeName, CKSProperties.DesignCatalogNode.ToBitmap(), FileNodeTypeProvider.CreateFilesNodes); } }
/// <summary> /// Nodes the children requested. /// </summary> /// <param name="sender">The sender.</param> /// <param name="e">The <see cref="ExplorerNodeEventArgs" /> instance containing the event data.</param> private void NodeChildrenRequested(object sender, ExplorerNodeEventArgs e) { IExplorerNode siteNode = e.Node; IExplorerSiteNodeInfo siteInfo = siteNode.Annotations.GetValue <IExplorerSiteNodeInfo>(); if (siteInfo != null && siteInfo.IsConnectionRoot) { Uri siteUrl = null; siteUrl = siteInfo.Url; } if (EnabledExtensionsOptionsPage.GetSetting <bool>(EnabledExtensionsOptions.ViewMasterPageAndPageLayoutGallery, true)) { e.Node.ChildNodes.AddFolder(CKSProperties.MasterPageGallerySiteNodeExtension_NodeName, CKSProperties.MasterPagesNode.ToBitmap(), CreateMasterPagesAndPageLayoutsNodes); } }
/// <summary> /// Nodes the menu items requested. /// </summary> /// <param name="sender">The sender.</param> /// <param name="e">The <see cref="ExplorerNodeMenuItemsRequestedEventArgs" /> instance containing the event data.</param> void NodeMenuItemsRequested(object sender, ExplorerNodeMenuItemsRequestedEventArgs e) { if (EnabledExtensionsOptionsPage.GetSetting <bool>(EnabledExtensionsOptions.FieldCopyID, true)) { IMenuItem copyIdItem = e.MenuItems.Add(CKSProperties.ContentTypeFieldNodeExtension_CopyIdNodeName, 1); copyIdItem.Click += copyIdItem_Click; } if (EnabledExtensionsOptionsPage.GetSetting <bool>(EnabledExtensionsOptions.ImportField, true)) { if (DTEManager.ActiveSharePointProject != null) { IMenuItem importFieldMenuItem = e.MenuItems.Add(CKSProperties.FieldNodeExtension_ImportNodeName); importFieldMenuItem.Click += importFieldMenuItem_Click; } } }
/// <summary> /// Nodes the menu items requested. /// </summary> /// <param name="sender">The sender.</param> /// <param name="e">The <see cref="ExplorerNodeMenuItemsRequestedEventArgs" /> instance containing the event data.</param> void NodeMenuItemsRequested(object sender, ExplorerNodeMenuItemsRequestedEventArgs e) { if (EnabledExtensionsOptionsPage.GetSetting <bool>(EnabledExtensionsOptions.DeveloperDashboardSettings, true)) { e.MenuItems.Add(CKSProperties.SiteNodeExtension_DeveloperDashboardSettings).Click += SiteNodeExtension_Click; } if (EnabledExtensionsOptionsPage.GetSetting <bool>(EnabledExtensionsOptions.OpenInSharePointDesigner, true)) { IMenuItem item = e.MenuItems.Add(CKSProperties.SiteNodeExtension_OpenInSPD); item.Click += delegate { IExplorerSiteNodeInfo nodeInfo = e.Node.Annotations.GetValue <IExplorerSiteNodeInfo>(); string url = nodeInfo.Url.ToString(); OpenInSharePointDesigner(url); }; } }
/// <summary> /// Create the child nodes and register their events. /// </summary> /// <param name="sender">The sender.</param> /// <param name="e">The ExplorerNodeMenuItemsRequestedEventArgs.</param> void NodeType_NodeMenuItemsRequested(object sender, ExplorerNodeMenuItemsRequestedEventArgs e) { IFeatureNodeInfo info = e.Node.Annotations.GetValue <IFeatureNodeInfo>(); FeatureInfo featureDetails = new FeatureInfo() { FeatureID = info.Id, Scope = (Scope)info.Scope }; if (EnabledExtensionsOptionsPage.GetSetting <bool>(EnabledExtensionsOptions.ActivateDeactivateFeature, true)) { AddToggleFeatureMenuItem(e.Node, e.MenuItems, featureDetails); } if (EnabledExtensionsOptionsPage.GetSetting <bool>(EnabledExtensionsOptions.FeatureCopyID, true)) { AddCopyIDMenuItem(e.Node, e.MenuItems, info); } }