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);
        }
Exemple #2
0
        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);
        }
Exemple #4
0
        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();
            }
        }