Exemplo n.º 1
0
        public static void CopyToClipboard(GUI.WorksheetController dg)
        {
            Altaxo.Data.DataTable           dt  = dg.DataTable;
            System.Windows.Forms.DataObject dao = new System.Windows.Forms.DataObject();

            if (dg.AreDataCellsSelected)
            {
                WriteAsciiToClipBoardIfDataCellsSelected(dg, dao);
            }
            else if (dg.ArePropertyCellsSelected && !(dg.AreDataCellsSelected))
            {
                WriteAsciiToClipBoardIfOnlyPropertyCellsSelected(dg, dao);
            }

            if (dg.AreColumnsOrRowsSelected)
            {
                // copy the data as table with the selected columns
                Altaxo.Data.DataTable.ClipboardMemento tablememento = new Altaxo.Data.DataTable.ClipboardMemento(
                    dg.DataTable, dg.SelectedDataColumns, dg.SelectedDataRows, dg.SelectedPropertyColumns, dg.SelectedPropertyRows);
                dao.SetData("Altaxo.Data.DataTable.ClipboardMemento", tablememento);

                // now copy the data object to the clipboard
                System.Windows.Forms.Clipboard.SetDataObject(dao, true);
            }
        }
Exemplo n.º 2
0
        public static void PasteFromClipboard(GUI.WorksheetController dg)
        {
            Altaxo.Data.DataTable           dt  = dg.DataTable;
            System.Windows.Forms.DataObject dao = System.Windows.Forms.Clipboard.GetDataObject() as System.Windows.Forms.DataObject;

            string[] formats = dao.GetFormats();
            System.Diagnostics.Trace.WriteLine("Available formats:");
            //foreach(string format in formats) System.Diagnostics.Trace.WriteLine(format);

            if (dao.GetDataPresent("Altaxo.Data.DataTable.ClipboardMemento"))
            {
                Altaxo.Data.DataTable.ClipboardMemento tablememento = (Altaxo.Data.DataTable.ClipboardMemento)dao.GetData("Altaxo.Data.DataTable.ClipboardMemento");
                PasteFromTable(dg, tablememento.DataTable);
                return;
            }

            object clipboardobject = null;

            Altaxo.Data.DataTable table = null;

            if (dao.GetDataPresent("Csv"))
            {
                clipboardobject = dao.GetData("Csv");
            }
            else if (dao.GetDataPresent("Text"))
            {
                clipboardobject = dao.GetData("Text");
            }


            if (clipboardobject is System.IO.MemoryStream)
            {
                table = Altaxo.Serialization.Ascii.AsciiImporter.Import((System.IO.Stream)clipboardobject);
            }
            else if (clipboardobject is string)
            {
                table = Altaxo.Serialization.Ascii.AsciiImporter.Import((string)clipboardobject);
            }


            if (null != table)
            {
                PasteFromTable(dg, table);
            }
        }
Exemplo n.º 3
0
        public static void CopyToClipboard(IWorksheetController dg)
        {
            Altaxo.Data.DataTable dt = dg.DataTable;
            var dataObject           = Current.Gui.GetNewClipboardDataObject();

            if (dg.AreDataCellsSelected)
            {
                WriteAsciiToClipBoardIfDataCellsSelected(dg, dataObject);
            }
            else if (dg.ArePropertyCellsSelected && !(dg.AreDataCellsSelected))
            {
                WriteAsciiToClipBoardIfOnlyPropertyCellsSelected(dg, dataObject);
            }

            if (dg.AreColumnsOrRowsSelected)
            {
                // copy the data as table with the selected columns
                var tablememento = new Altaxo.Data.DataTable.ClipboardMemento(dg.DataTable, dg.SelectedDataColumns, dg.SelectedDataRows, dg.SelectedPropertyColumns, dg.SelectedPropertyRows);
                Altaxo.Serialization.Clipboard.ClipboardSerialization.PutObjectToDataObject("Altaxo.Data.DataTable.ClipboardMemento", tablememento, dataObject);
            }

            Current.Gui.SetClipboardDataObject(dataObject, true);
        }
Exemplo n.º 4
0
		public static void CopyToClipboard(IWorksheetController dg)
		{
			Altaxo.Data.DataTable dt = dg.DataTable;
			var dataObject = Current.Gui.GetNewClipboardDataObject();

			if (dg.AreDataCellsSelected)
			{
				WriteAsciiToClipBoardIfDataCellsSelected(dg, dataObject);
			}
			else if (dg.ArePropertyCellsSelected && !(dg.AreDataCellsSelected))
			{
				WriteAsciiToClipBoardIfOnlyPropertyCellsSelected(dg, dataObject);
			}

			if (dg.AreColumnsOrRowsSelected)
			{
				// copy the data as table with the selected columns
				var tablememento = new Altaxo.Data.DataTable.ClipboardMemento(dg.DataTable, dg.SelectedDataColumns, dg.SelectedDataRows, dg.SelectedPropertyColumns, dg.SelectedPropertyRows);
				Altaxo.Serialization.Clipboard.ClipboardSerialization.PutObjectToDataObject("Altaxo.Data.DataTable.ClipboardMemento", tablememento, dataObject);
			}

			Current.Gui.SetClipboardDataObject(dataObject, true);
		}