Beispiel #1
0
        protected override void Run(ProjectBrowseController ctrl)
        {
            var list  = ctrl.GetSelectedListItems().OfType <Altaxo.Graph.GraphDocumentBase>();
            int count = list.Count();

            if (count == 0)
            {
                Current.Gui.ErrorMessageBox("There were no graph documents selected for rescaling!", "No graph documents selected");
                return;
            }
            else
            {
                foreach (var graph in list)
                {
                    if (graph is Altaxo.Graph.Gdi.GraphDocument gdiDoc)
                    {
                        RescaleAllLayers(gdiDoc);
                    }
                    else if (graph is Altaxo.Graph.Graph3D.GraphDocument graph3DDoc)
                    {
                        RescaleAllLayers(graph3DDoc);
                    }
                    else
                    {
                        throw new NotImplementedException("This type of graph document is not known here.");
                    }
                }

                Current.Gui.InfoMessageBox(string.Format("Axes of {0} graph document(s) rescaled.", list.Count()), "Success");
            }
        }
        /// <summary>
        /// Plot common columns in two or more tables.
        /// </summary>
        /// <param name="ctrl">Project browse controller.</param>
        public static void PlotCommonColumns(this ProjectBrowseController ctrl)
        {
            var list    = ctrl.GetSelectedListItems();
            var command = new Altaxo.Worksheet.Commands.PlotCommonColumnsCommand();

            foreach (object item in list)
            {
                if (item is DataTable)
                {
                    command.Tables.Add((DataTable)item);
                }
            }

            if (command.Tables.Count == 0)
            {
                return;
            }

            var commonColumnNames = command.GetCommonColumnNamesUnordered();

            if (0 == commonColumnNames.Count)
            {
                Current.Gui.InfoMessageBox("The selected tables do not seem to have common columns", "Please note");
                return;
            }

            if (true == Current.Gui.ShowDialog(ref command, "Plot common columns", false))
            {
                command.Execute();
            }
        }
        /// <summary>
        /// Moves the selected list items to a folder that is asked for by a dialog.
        /// </summary>
        /// <param name="ctrl">Project browse controller.</param>
        public static void CopySelectedListItemsToMultipleFolders(this ProjectBrowseController ctrl)
        {
            var list = ctrl.GetSelectedListItems();

            bool areDocumentsFromOneFolder = ctrl.IsProjectFolderSelected(out var originalFolderName);

            var dlgDoc = new Altaxo.Gui.ProjectBrowser.CopyItemsToMultipleFolderData
            {
                RelocateReferences = true
            };

            if (!Current.Gui.ShowDialog(ref dlgDoc, "Select folders to copy to", false))
            {
                return;
            }

            foreach (var newFolderName in dlgDoc.FoldersToCopyTo)
            {
                DocNodePathReplacementOptions relocateOptions = null;
                if (true == dlgDoc.RelocateReferences)
                {
                    relocateOptions = new DocNodePathReplacementOptions();
                    relocateOptions.AddPathReplacementsForAllProjectItemTypes(originalFolderName, newFolderName);
                }
                Current.Project.Folders.CopyItemsToFolder(list, newFolderName, null != relocateOptions ? relocateOptions.Visit : (DocNodeProxyReporter)null, dlgDoc.OverwriteExistingItems);
            }
        }
        /// <summary>
        /// Moves the selected list items to a folder that is asked for by a dialog.
        /// </summary>
        /// <param name="ctrl">Project browse controller.</param>
        public static void CopySelectedListItemsToFolder(this ProjectBrowseController ctrl)
        {
            var list = ctrl.GetSelectedListItems();

            bool areDocumentsFromOneFolder = ctrl.IsProjectFolderSelected(out var originalFolderName);

            CopyDocuments(list, areDocumentsFromOneFolder, originalFolderName);
        }
        /// <summary>
        /// Show the items currently selected in the document area.
        /// </summary>
        /// <param name="ctrl">Project browse controller.</param>
        public static void ShowSelectedListItem(this ProjectBrowseController ctrl)
        {
            var list = Current.Project.Folders.GetExpandedProjectItemSet(ctrl.GetSelectedListItems());

            foreach (object item in list)
            {
                Current.IProjectService.ShowDocumentView(item);
            }
        }
        /// <summary>
        /// Hide the selected list items, so that they are not shown in the document area.
        /// </summary>
        /// <param name="ctrl"></param>
        public static void HideSelectedListItems(this ProjectBrowseController ctrl)
        {
            var selItems = ctrl.GetSelectedListItems();

            foreach (object item in Current.Project.Folders.GetExpandedProjectItemSet(selItems))
            {
                Current.IProjectService.CloseDocumentViews(item);
            }
        }
        /// <summary>
        /// Moves the selected list items to a folder that is asked for by a dialog.
        /// </summary>
        /// <param name="ctrl">Project browse controller.</param>
        public static void CopySelectedListItemsToClipboard(this ProjectBrowseController ctrl)
        {
            var selItems = ctrl.GetSelectedListItems();

            // if the items are from the same folder, but are selected from the AllItems, AllWorksheet or AllGraphs nodes, we invalidate the folderName (because then we consider the items to be rooted)
            if (!ctrl.IsProjectFolderSelected(out var folderName))
            {
                folderName = null;
            }

            var list = Current.Project.Folders.GetExpandedProjectItemSet(selItems); // Expand the list to get rid of the ProjectFolder items

            Altaxo.Main.Commands.ProjectItemCommands.CopyItemsToClipboard(list, folderName);
        }
Beispiel #8
0
        protected override void Run(ProjectBrowseController ctrl)
        {
            var list  = ctrl.GetSelectedListItems().OfType <Altaxo.Graph.Gdi.GraphDocument>();
            int count = list.Count();

            if (count == 0)
            {
                return;
            }
            else
            {
                Altaxo.Graph.Gdi.GraphDocumentOtherActions.ShowExchangeTablesOfPlotItemsDialog(list);
            }
        }
Beispiel #9
0
        protected override void Run(ProjectBrowseController ctrl)
        {
            var list  = ctrl.GetSelectedListItems().OfType <Altaxo.Graph.Gdi.GraphDocument>();
            int count = list.Count();

            if (count == 0)
            {
                Current.Gui.ErrorMessageBox("There were no graph documents selected for resizing!", "No graph documents selected");
                return;
            }
            else
            {
                if (Altaxo.Gui.Graph.Graph2D.ResizeGraphController.ShowResizeGraphDialog(list))
                {
                    Current.Gui.InfoMessageBox(string.Format("{0} graph(s) resized.", list.Count()), "Success");
                }
            }
        }
Beispiel #10
0
        protected override void Run(ProjectBrowseController ctrl)
        {
            var list  = ctrl.GetSelectedListItems().OfType <Altaxo.Graph.GraphDocumentBase>();
            int count = list.Count();

            if (count == 0)
            {
                return;
            }
            if (count == 1)
            {
                Altaxo.Graph.GraphDocumentBaseExportActions.ShowFileExportSpecificDialog(list.First());
            }
            else
            {
                Altaxo.Graph.GraphDocumentBaseExportActions.ShowExportMultipleGraphsDialogAndExportOptions(list);
            }
        }
        public static void RenameSelectedListItem(this ProjectBrowseController ctrl)
        {
            var list = ctrl.GetSelectedListItems();

            if (list.Count != 1)
            {
                return;
            }

            var obj = list[0];

            if (obj is IProjectItem)
            {
                Altaxo.Main.Commands.ProjectItemCommands.ShowRenameDialog((IProjectItem)obj);
            }
            else if (obj is ProjectFolder)
            {
                ctrl.Project.Folders.ShowFolderRenameDialog((ProjectFolder)obj);
            }
        }
Beispiel #12
0
		protected override void Run(ProjectBrowseController ctrl)
		{
			var list = ctrl.GetSelectedListItems().OfType<Altaxo.Graph.Gdi.GraphDocument>();
			int count = list.Count();

			if (count == 0)
			{
				return;
			}
			else
			{
				Altaxo.Graph.Gdi.GraphDocumentOtherActions.ShowExchangeTablesOfPlotItemsDialog(list);
			}
		}
Beispiel #13
0
		protected override void Run(ProjectBrowseController ctrl)
		{
			var list = ctrl.GetSelectedListItems().OfType<Altaxo.Graph.Gdi.GraphDocument>();
			int count = list.Count();

			if (count == 0)
				return;
			if (count == 1)
				Altaxo.Graph.Gdi.GraphDocumentExportActions.ShowFileExportSpecificDialog(list.First());
			else
				Altaxo.Graph.Gdi.GraphDocumentExportActions.ShowExportMultipleGraphsDialogAndExportOptions(list);
		}
Beispiel #14
0
		protected override void Run(ProjectBrowseController ctrl)
		{
			var list = ctrl.GetSelectedListItems().OfType<Altaxo.Graph.Gdi.GraphDocument>();
			int count = list.Count();

			if (count == 0)
			{
				Current.Gui.ErrorMessageBox("There were no graph documents selected for rescaling!", "No graph documents selected");
				return;
			}
			else
			{
				Altaxo.Graph.Gdi.GraphDocumentExportActions.ShowExportMultipleGraphsDialogAndExportOptions(list);
				Current.Gui.InfoMessageBox(string.Format("Axes of {0} graph document(s) rescaled.", "Success"));
			}
		}
Beispiel #15
0
		protected override void Run(ProjectBrowseController ctrl)
		{
			var list = ctrl.GetSelectedListItems();
			Altaxo.Main.Commands.MultiRenameDocuments.ShowRenameDocumentsDialog(list);
		}
        /// <summary>
        /// Shows the selected list items exclusively in the document area.
        /// </summary>
        /// <param name="ctrl">Project browse controller.</param>
        public static void ShowSelectedListItemsExclusively(this ProjectBrowseController ctrl)
        {
            var selItems = ctrl.GetSelectedListItems();

            ShowDocumentsExclusively(Current.Project.Folders.GetExpandedProjectItemSet(selItems));
        }
        /// <summary>
        /// Deletes the selected list items (with confirmation dialog shown).
        /// </summary>
        /// <param name="ctrl">Project browse controller.</param>
        public static void DeleteSelectedListItems(this ProjectBrowseController ctrl)
        {
            var projItems = Current.Project.Folders.GetExpandedProjectItemSet(ctrl.GetSelectedListItems());

            Altaxo.Main.ProjectFolders.DeleteDocuments(projItems);
        }
        /// <summary>
        /// Moves the selected list items to a folder that is asked for by a dialog.
        /// </summary>
        /// <param name="ctrl">Project browse controller.</param>
        public static void MoveSelectedListItems(this ProjectBrowseController ctrl)
        {
            var list = ctrl.GetSelectedListItems();

            MoveDocuments(list);
        }
Beispiel #19
0
        protected override void Run(ProjectBrowseController ctrl)
        {
            var list = ctrl.GetSelectedListItems();

            Altaxo.Main.Commands.MultiRenameDocuments.ShowRenameDocumentsDialog(list);
        }