Пример #1
0
 /// <summary>
 /// Gets a handle to the icon that should be set for this node
 /// </summary>
 /// <param name="open">Whether the folder is open, ignored here.</param>
 /// <returns>Handle to icon for the node</returns>
 public override object GetIconHandle(bool open)
 {
     return(PackageUtilities.GetIntPointerFromImage(this.ProjectMgr.ImageList.Images[(int)ProjectNode.ImageName.DependentFile]));;
 }
Пример #2
0
 public void IsFileTransfromWithValidArguments(string docName, string trnName)
 {
     Assert.True(PackageUtilities.IsFileTransform(docName, trnName, this.baseTestProjectConfigs));
 }
Пример #3
0
 public async Task <Stream> OpenNuspecStreamAsync(PackageInfo package)
 {
     return(await PackageUtilities.OpenNupkgContentFileStream(package, OpenNupkgStreamAsync, package.Id + ".nuspec", _reports));
 }
Пример #4
0
 public async Task <Stream> OpenRuntimeStreamAsync(PackageInfo package)
 {
     return(await PackageUtilities.OpenNupkgContentFileStream(package, OpenNupkgStreamAsync, "runtime.json", _reports));
 }
Пример #5
0
 public Task <Stream> OpenRuntimeStreamAsync(PackageInfo package)
 {
     // TODO: Keep the runtime.json somewhere?
     return(PackageUtilities.OpenNupkgContentFileStream(package, OpenNupkgStreamAsync, "runtime.json", _logger));
 }
Пример #6
0
        public override object GetIconHandle(bool open)
        {
            int offset = (this.CanShowDefaultIcon() ? (int)ProjectNode.ImageName.Reference : (int)ProjectNode.ImageName.DanglingReference);

            return(PackageUtilities.GetIntPointerFromImage(this.ProjectMgr.ImageList.Images[offset]));
        }
Пример #7
0
 public override object GetIconHandle(bool open)
 {
     return(PackageUtilities.GetIntPointerFromImage(open ? this.ProjectMgr.ImageList.Images[(int)ProjectNode.ImageName.OpenReferenceFolder] : this.ProjectMgr.ImageList.Images[(int)ProjectNode.ImageName.ReferenceFolder]));
 }
 public int CanCreateProject(string pszFilename, uint grfCreateFlags, out int pfCanCreate)
 {
     pfCanCreate = !String.IsNullOrEmpty(pszFilename) && !PackageUtilities.IsFileNameInvalid(pszFilename) ? 1 : 0;
     return(VSConstants.S_OK);
 }
Пример #9
0
 /// <summary>
 /// Reloads the archive for editing.
 /// </summary>
 public void ReloadArchive()
 {
     PackageUtilities.DecompressArchive(DestinationLocation.ToString());
     ArchiveMemoryStream = ZipFile.Open(WorkingArchive, ZipArchiveMode.Update);
 }
Пример #10
0
 /// <summary>
 /// Closes the archive.
 /// </summary>
 public void CloseArchive()
 {
     ArchiveMemoryStream.Dispose();
     PackageUtilities.CompressArchive(WorkingArchive, DestinationLocation.ToString());
 }
Пример #11
0
        private async void MenuItemCallback(object sender, EventArgs e)
        {
            var item   = ProjectHelpers.GetSelectedItem();
            var folder = FindFolder(item);

            if (string.IsNullOrEmpty(folder) || !Directory.Exists(folder))
            {
                return;
            }

            var selectedItem    = item as ProjectItem;
            var selectedProject = item as Project;
            var project         = selectedItem?.ContainingProject ?? selectedProject ?? ProjectHelpers.GetActiveProject();

            if (project == null)
            {
                return;
            }

            string input = PromptForFileName(folder).TrimStart('/', '\\').Replace("/", "\\");

            if (string.IsNullOrEmpty(input))
            {
                return;
            }

            string[] parsedInputs = GetParsedInput(input);

            foreach (string inputItem in parsedInputs)
            {
                input = inputItem;

                if (input.EndsWith("\\", StringComparison.Ordinal))
                {
                    input = input + "__dummy__";
                }

                var    file = new FileInfo(Path.Combine(folder, input));
                string dir  = file.DirectoryName;

                PackageUtilities.EnsureOutputPath(dir);

                if (!file.Exists)
                {
                    int position = await WriteFile(project, file.FullName);

                    try
                    {
                        ProjectItem projectItem = null;
                        var         projItem    = item as ProjectItem;
                        if (projItem != null)
                        {
                            if (EnvDTE.Constants.vsProjectItemKindVirtualFolder == projItem.Kind)
                            {
                                projectItem = projItem.ProjectItems.AddFromFile(file.FullName);
                            }
                        }
                        if (projectItem == null)
                        {
                            projectItem = project.AddFileToProject(file);
                        }

                        if (file.FullName.EndsWith("__dummy__"))
                        {
                            projectItem?.Delete();
                            continue;
                        }

                        VsShellUtilities.OpenDocument(this, file.FullName);

                        // Move cursor into position
                        if (position > 0)
                        {
                            var view = ProjectHelpers.GetCurentTextView();

                            if (view != null)
                            {
                                view.Caret.MoveTo(new SnapshotPoint(view.TextBuffer.CurrentSnapshot, position));
                            }
                        }

                        _dte.ExecuteCommand("SolutionExplorer.SyncWithActiveDocument");
                        _dte.ActiveDocument.Activate();
                    }
                    catch (Exception ex)
                    {
                        Logger.Log(ex);
                    }
                }
                else
                {
                    System.Windows.Forms.MessageBox.Show("The file '" + file + "' already exist.");
                }
            }
        }