Exemplo n.º 1
0
            public CreateItem([NotNull] EnvDTE.ProjectItem item, [NotNull] Project project, [CanBeNull] ProjectItem projectItem, [NotNull] IFileItemHandler handler)
            {
                Assert.ArgumentNotNull(item, nameof(item));
                Assert.ArgumentNotNull(project, nameof(project));
                Assert.ArgumentNotNull(handler, nameof(handler));

                Handler      = handler;
                ProjectItem  = projectItem;
                Path         = project.GetRelativeFileName(item.GetFileName());
                Extension    = System.IO.Path.GetExtension(Path);
                IsChecked    = true;
                Project      = project;
                Item         = item;
                TemplateName = handler.GetTemplateName();
                ItemPath     = System.IO.Path.GetFileNameWithoutExtension(Path);

                if (projectItem != null)
                {
                    Status = Rocks.Resources.CreateItem_CreateItem_create;
                }
                else
                {
                    Status = Rocks.Resources.CreateItem_CreateItem_add_and_create;
                }
            }
Exemplo n.º 2
0
        private void Process([NotNull] Project project, [NotNull] EnvDTE.ProjectItem item)
        {
            Debug.ArgumentNotNull(project, nameof(project));
            Debug.ArgumentNotNull(item, nameof(item));

            var projectFile = project.GetProjectItem(item) as ProjectFileItem;

            if (projectFile != null)
            {
                var itemIds = projectFile.Items;
                if (itemIds.Count > 0)
                {
                    return;
                }
            }

            var fileName = item.GetFileName();

            var handler = FileItemManager.GetFileItemHandler(fileName);

            if (handler == null)
            {
                return;
            }

            if (projectFile != null)
            {
                if (createItems.Any(createItem => createItem.ProjectItem == projectFile))
                {
                    return;
                }
            }

            createItems.Add(new CreateItem(item, project, projectFile, handler));
        }
Exemplo n.º 3
0
        private bool IsFileItem([NotNull] EnvDTE.ProjectItem item)
        {
            Debug.ArgumentNotNull(item, nameof(item));

            var project = ProjectManager.GetProject(item);

            if (project == null)
            {
                return(false);
            }

            var projectFile = project.GetProjectItem(item) as ProjectFileItem;

            if (projectFile != null)
            {
                var itemIds = projectFile.Items;
                if (itemIds.Count > 0)
                {
                    return(false);
                }
            }

            var fileName = item.GetFileName();

            if (string.IsNullOrEmpty(fileName))
            {
                return(false);
            }

            return(FileItemManager.GetFileItemHandler(fileName) != null);
        }
Exemplo n.º 4
0
        public static string GetProjectItemFileName([NotNull] this ProjectBase project, [NotNull] EnvDTE.ProjectItem projectItem)
        {
            Assert.ArgumentNotNull(project, nameof(project));
            Assert.ArgumentNotNull(projectItem, nameof(projectItem));

            var fileName = projectItem.GetFileName();

            return(project.GetRelativeFileName(fileName));
        }
Exemplo n.º 5
0
        private bool IsFileItem([NotNull] EnvDTE.ProjectItem item)
        {
            Assert.ArgumentNotNull(item, nameof(item));

            var project = ProjectManager.GetProject(item);

            if (project == null)
            {
                return(false);
            }

            var fileName = item.GetFileName();

            if (string.IsNullOrEmpty(fileName))
            {
                return(false);
            }

            var extension = Path.GetExtension(fileName) ?? string.Empty;

            return(ToolboxItemManager.GetToolboxItemHandler(extension) != null);
        }
Exemplo n.º 6
0
        private bool IsFolder([NotNull] EnvDTE.ProjectItem item)
        {
            Debug.ArgumentNotNull(item, nameof(item));

            return(item.GetFileName().EndsWith(@"\"));
        }