BoxDiagrams.DiagramControl.Copy C# (CSharp) Метод

Copy() приватный Метод

private Copy ( bool run = true ) : bool
run bool
Результат bool
		public bool Copy(bool run = true)
		{
			if (_selectedShapes.Count == 0)
				return false;
			if (run)
			{
				var buf = SerializeSelected();
				var data = new DataObject();

				data.SetData("DiagramDocument", buf.ToArray());

				var sortedShapes = _selectedShapes.OrderBy(s =>
				{
					var c = s.BBox.Center();
					return c.Y + c.X / 10;
				});
				var text = StringExt.Join("\n\n", sortedShapes
					.Select(s => s.PlainText()).Where(t => !string.IsNullOrEmpty(t)));
				if (!string.IsNullOrEmpty(text))
					data.SetText(text);

				// Crazy Clipboard deletes data by default on app exit!
				// need 'true' parameter to prevent loss of data on exit
				Clipboard.SetDataObject(data, true);
			}
			return true;
		}