/// <summary>
        /// Merge selected report items into manifest.
        /// </summary>
        public override void Execute()
        {
            if (CurrentDocument != null)
            {
                Project project = App.Instance.SalesForceApp.CurrentProject;

                // create the source manifest
                SourceFile[] files    = CurrentDocument.SelectedReportItems;
                Manifest     manifest = new Manifest(String.Format("{0} files selected from report", files.Length));
                foreach (SourceFile file in files)
                {
                    manifest.AddItem(file);
                }

                MergeManifestWindow dlg = new MergeManifestWindow();
                dlg.ManifestSources = new Manifest[] { manifest };
                dlg.ManifestSource  = manifest;
                dlg.ManifestTargets = project.GetManifests();

                if (App.ShowDialog(dlg))
                {
                    IDocument[]            targetDocuments = App.Instance.Content.GetDocumentsByEntity(dlg.ManifestTarget);
                    ManifestEditorDocument targetDocument  = targetDocuments.FirstOrDefault(d => d is ManifestEditorDocument) as ManifestEditorDocument;
                    if (targetDocument == null)
                    {
                        targetDocument = new ManifestEditorDocument(project, dlg.ManifestTarget);
                    }

                    targetDocument.Merge(dlg.ManifestSource);
                    App.Instance.Content.OpenDocument(targetDocument);
                }
            }
        }
Exemple #2
0
        /// <summary>
        /// Merge manifests.
        /// </summary>
        public override void Execute()
        {
            Project project = App.Instance.SalesForceApp.CurrentProject;

            if (project != null)
            {
                Manifest[] manifests = project.GetManifests();
                Manifest   manifest  = GetSelectedManifest();

                MergeManifestWindow dlg = new MergeManifestWindow();
                dlg.ManifestSources = manifests;
                dlg.ManifestTargets = manifests;
                dlg.ManifestSource  = GetSelectedManifest();
                if (App.ShowDialog(dlg))
                {
                    IDocument[]            targetDocuments = App.Instance.Content.GetDocumentsByEntity(dlg.ManifestTarget);
                    ManifestEditorDocument targetDocument  = targetDocuments.FirstOrDefault(d => d is ManifestEditorDocument) as ManifestEditorDocument;
                    if (targetDocument == null)
                    {
                        targetDocument = new ManifestEditorDocument(project, dlg.ManifestTarget);
                    }

                    targetDocument.Merge(dlg.ManifestSource);
                    App.Instance.Content.OpenDocument(targetDocument);
                }
            }
        }
Exemple #3
0
        /// <summary>
        /// Open the manifest file.
        /// </summary>
        public override void DoubleClick()
        {
            foreach (IDocument document in App.Instance.Content.OpenDocuments)
            {
                if (document is ManifestEditorDocument && (document as ManifestEditorDocument).Manifest.Equals(Manifest))
                {
                    App.Instance.Content.OpenDocument(document);
                    return;
                }
            }

            ManifestEditorDocument manifestDocument = new ManifestEditorDocument(Project, Manifest);

            App.Instance.Content.OpenDocument(manifestDocument);
        }