private Visual GetUploading(Compositor compositor, float width, float height, Color color) { float progressWidth = 26.0f / 2.0f; float progressHeight = 8.0f / 2.0f; float leftPadding = 0.0f; float topPadding = height / 2.0f - progressHeight / 2.0f; float round = 1.25f; // Begin background var background = compositor.CreateRoundedRectangleGeometry(); background.Offset = new Vector2(leftPadding, topPadding); background.Size = new Vector2(progressWidth, progressHeight); background.CornerRadius = new Vector2(round); var spriteBackground = compositor.CreateSpriteShape(background); spriteBackground.FillBrush = compositor.CreateColorBrush(color); // Begin overlay var overlay = compositor.CreateRoundedRectangleGeometry(); overlay.Offset = new Vector2(leftPadding, topPadding); overlay.Size = new Vector2(progressWidth, progressHeight); overlay.CornerRadius = new Vector2(round); var spriteOverlay = compositor.CreateSpriteShape(overlay); spriteOverlay.FillBrush = compositor.CreateColorBrush(Color.FromArgb(75, color.R, color.G, color.B)); // Begin bar var bar = compositor.CreateRoundedRectangleGeometry(); bar.Offset = new Vector2(leftPadding - progressWidth + 0, topPadding); bar.Size = new Vector2(progressWidth, progressHeight); bar.CornerRadius = new Vector2(round); var spriteBar = compositor.CreateSpriteShape(bar); spriteBar.FillBrush = compositor.CreateColorBrush(color); var shape = compositor.CreateShapeVisual(); //shape.Shapes.Add(spriteBackground); shape.Shapes.Add(spriteOverlay); shape.Shapes.Add(spriteBar); shape.Size = new Vector2(width, height); shape.Scale = new Vector3(2, 2, 0); shape.Clip = compositor.CreateGeometricClip(background); // Begin animation var props = compositor.CreatePropertySet(); props.InsertScalar("animationValue", 0.0f); var reference = props.GetReference(); var animationValue = reference.GetScalarProperty("animationValue"); var easing = compositor.CreateCubicBezierEasingFunction(new Vector2(0.42f, 0), new Vector2(0.58f, 1)); var animationValueImpl = compositor.CreateScalarKeyFrameAnimation(); animationValueImpl.InsertKeyFrame(1, 0, easing); animationValueImpl.InsertKeyFrame(1, 1, easing); animationValueImpl.Duration = TimeSpan.FromMilliseconds(1750); animationValueImpl.IterationBehavior = AnimationIterationBehavior.Forever; props.StartAnimation("animationValue", animationValueImpl); ScalarNode progress = (animationValue * (progressWidth * 2.0f)); ExpressionNode moveBar = EF.Vector2(leftPadding - progressWidth + progress, topPadding); bar.StartAnimation("Offset", moveBar); return(shape); }
public void Execute() { MappingNode temp = editor.mapNode.DeepClone(); TreeNode tempTreeNode = (TreeNode)editor.root.Clone(); if (dataGridView != null) { int index = 0; foreach (INode child in updateNodeGlobal.Children) { if (child is ScalarNode) { ScalarNode tempScalar = (ScalarNode)child; TreeNode node = editor.searchTreeEdit(editor.root, tempScalar.id); var key = dataGridView.Rows[index].Cells[0].EditedFormattedValue.ToString(); var value = dataGridView.Rows[index].Cells[1].EditedFormattedValue.ToString(); tempScalar.Key = key; tempScalar.Value = value; node.Text = key + ": " + value; } index++; } if (dataGridView.Rows.Count > updateNodeGlobal.Children.Count) { int numNewScalar = dataGridView.Rows.Count - updateNodeGlobal.Children.Count - 1; for (int i = 0; i < numNewScalar; i++) { var key = dataGridView.Rows[index].Cells[0].EditedFormattedValue.ToString(); var value = dataGridView.Rows[index].Cells[1].EditedFormattedValue.ToString(); index++; ScalarNode scalar = new ScalarNode(value, null, null, 0, LoadTree.id++, updateNodeGlobal, key); editor.nodeSelected.AddChild(scalar); } } } else { if (value == null && key == null) { itemNode.Key = ""; itemNode.Value = ""; } else if (value != null && key != null) { itemNode.Key = key; itemNode.Value = value; } else if (value != null && key == null) { itemNode.Key = ""; itemNode.Value = value; } else if (value == null && key != null) { itemNode.Key = key; itemNode.Value = ""; } nodeToEdit.Text = key + ": " + value; } previousMaxRoot = temp; previousTreeNode = tempTreeNode; }
private Visual GetVoiceRecording(Compositor compositor, float width, float height, Color color) { float delta = 3.0f; float x = 3.0f; float y = height / 2.0f; // Begin dot1 var dot1 = compositor.CreateEllipseGeometry(); dot1.TrimStart = 0.5f - 0.05f; dot1.TrimEnd = 0.5f + 0.05f; var spriteDot1 = compositor.CreateSpriteShape(dot1); var brushDot1 = spriteDot1.StrokeBrush = compositor.CreateColorBrush(color); spriteDot1.StrokeThickness = 1.5f; spriteDot1.Offset = new Vector2(x, y); spriteDot1.StrokeStartCap = CompositionStrokeCap.Round; spriteDot1.StrokeEndCap = CompositionStrokeCap.Round; spriteDot1.RotationAngleInDegrees = -90; // Begin dot2 var dot2 = compositor.CreateEllipseGeometry(); dot2.TrimStart = 0.5f - 0.05f; dot2.TrimEnd = 0.5f + 0.05f; var spriteDot2 = compositor.CreateSpriteShape(dot2); var brushDot2 = spriteDot2.StrokeBrush = compositor.CreateColorBrush(color); spriteDot2.StrokeThickness = 1.5f; spriteDot2.Offset = new Vector2(x, y); spriteDot2.StrokeStartCap = CompositionStrokeCap.Round; spriteDot2.StrokeEndCap = CompositionStrokeCap.Round; spriteDot2.RotationAngleInDegrees = -90; // Begin dot2 var dot3 = compositor.CreateEllipseGeometry(); dot3.TrimStart = 0.5f - 0.05f; dot3.TrimEnd = 0.5f + 0.05f; var spriteDot3 = compositor.CreateSpriteShape(dot3); var brushDot3 = spriteDot3.StrokeBrush = compositor.CreateColorBrush(color); spriteDot3.StrokeThickness = 1.5f; spriteDot3.Offset = new Vector2(x, y); spriteDot3.StrokeStartCap = CompositionStrokeCap.Round; spriteDot3.StrokeEndCap = CompositionStrokeCap.Round; spriteDot3.RotationAngleInDegrees = -90; // Begin shape var shape = compositor.CreateShapeVisual(); shape.Shapes.Add(spriteDot1); shape.Shapes.Add(spriteDot2); shape.Shapes.Add(spriteDot3); shape.Size = new Vector2(width, height); shape.Scale = new Vector3(2, 2, 0); // Begin animation var props = compositor.CreatePropertySet(); props.InsertScalar("animationValue", 0.0f); var reference = props.GetReference(); var animationValue = reference.GetScalarProperty("animationValue"); var easing = compositor.CreateLinearEasingFunction(); var animationValueImpl = compositor.CreateScalarKeyFrameAnimation(); animationValueImpl.InsertKeyFrame(0, 0, easing); animationValueImpl.InsertKeyFrame(1, 1, easing); animationValueImpl.Duration = TimeSpan.FromMilliseconds(700); animationValueImpl.IterationBehavior = AnimationIterationBehavior.Forever; props.StartAnimation("animationValue", animationValueImpl); ScalarNode radiusz = animationValue * delta; ExpressionNode radiusDot1 = EF.Vector2(radiusz, radiusz); ExpressionNode radiusDot2 = EF.Vector2(radiusz + delta, radiusz + delta); ExpressionNode radiusDot3 = EF.Vector2(radiusz + delta * 2, radiusz + delta * 2); dot1.StartAnimation("Radius", radiusDot1); dot2.StartAnimation("Radius", radiusDot2); dot3.StartAnimation("Radius", radiusDot3); ScalarNode alpha; alpha = 1.0f - EF.Pow(EF.Cos(radiusz / (3.0f * delta) * PI), 10); ExpressionNode colorDot1 = EF.ColorRgb(alpha * 255, color.R, color.G, color.B); alpha = 1.0f - EF.Pow(EF.Cos((radiusz + delta) / (3.0f * delta) * PI), 10); ExpressionNode colorDot2 = EF.ColorRgb(alpha * 255, color.R, color.G, color.B); alpha = 1.0f - EF.Pow(EF.Cos((radiusz + delta * 2) / (3.0f * delta) * PI), 10); ExpressionNode colorDot3 = EF.ColorRgb(alpha * 255, color.R, color.G, color.B); brushDot1.StartAnimation("Color", colorDot1); brushDot2.StartAnimation("Color", colorDot2); brushDot3.StartAnimation("Color", colorDot3); return(shape); }
private void toolStripButton3_Click(object sender, EventArgs e)//redo btn { try { if (nodeSelected == null) { return; } Manager.Redo(); if (nodeSelected is ScalarNode) { ScalarNode temp = (ScalarNode)searchForNode(mapNode, nodeSelected.getID()); string[] row = new string[] { temp.Key, temp.Value }; dataGridView1.Rows.RemoveAt(0); dataGridView1.Rows.Add(row); mainTreeView.Nodes.Clear(); mainTreeView.Nodes.Add(root); root.Expand(); TreeNode node = searchTreeEdit(root, nodeSelected.getParent().getID()); if (node == null) { return; } node.Expand(); expandAllNodes(nodeSelected); } else { INode temp = searchForNode(mapNode, nodeSelected.getID()); foreach (INode child in temp.Children) { if (child is ScalarNode) { ScalarNode temp2 = (ScalarNode)child; string[] row = new string[] { temp2.Key, temp2.Value }; dataGridView1.Rows.RemoveAt(0); dataGridView1.Rows.Add(row); } } mainTreeView.Nodes.Clear(); mainTreeView.Nodes.Add(root); root.Expand(); expandAllNodes(nodeSelected); } if (remove != null) { if (RemoveCommand.isValue == true) { // mapNode = remove.passRoot(); //root = null; // root = remove.PassRootTreeNode(); mainTreeView.Nodes.Clear(); mainTreeView.Nodes.Add(root); // setNewTreeRoot(root, mapNode); RemoveCommand.isValue = false; root.Expand(); } } } catch (Exception exception) { RefreshAll(); } }