internal static void SetupExpressionControl(ScratchNet.Expression expresion, StackPanel container) { foreach (ItemDescriptor d in expresion.Descriptor) { container.Children.Add(GetUIFor(d)); } }
public void SetExpression(ScratchNet.Expression exp) { if (exp == null) { if (this.Children.Count > 3) { this.Children.RemoveAt(3); } //this.TextInput.Visibility = Visibility.Visible; LeftPart.Visibility = Visibility.Visible; CenterPart.Visibility = Visibility.Visible; RightPart.Visibility = Visibility.Visible; } else { LeftPart.Visibility = Visibility.Collapsed; CenterPart.Visibility = Visibility.Collapsed; RightPart.Visibility = Visibility.Collapsed; if (this.Children.Count > 3) { this.Children.RemoveAt(3); } if (exp.Type == "number") { NumberExpressionControl ctrl = new NumberExpressionControl(); Grid.SetColumnSpan(ctrl, 3); ctrl.Expression = exp; this.Children.Add(ctrl); } else if (exp.Type == "boolean") { BooleanExpressionControl ctrl = new BooleanExpressionControl(); Grid.SetColumnSpan(ctrl, 3); ctrl.Expression = exp; this.Children.Add(ctrl); } else { ObjectExpressionControl ctrl = new ObjectExpressionControl(); Grid.SetColumnSpan(ctrl, 3); ctrl.Expression = exp; this.Children.Add(ctrl); } } }
public void SetExpression(ScratchNet.Expression exp) { if (exp == null) { if (CenterPart.Children.Count > 3) { CenterPart.Children.RemoveAt(3); } LeftPart.Visibility = Visibility.Visible; CenterPart.Visibility = Visibility.Visible; RightPart.Visibility = Visibility.Visible; } else { if (CenterPart.Children.Count > 3) { CenterPart.Children.RemoveAt(3); } LeftPart.Visibility = Visibility.Collapsed; CenterPart.Visibility = Visibility.Collapsed; RightPart.Visibility = Visibility.Collapsed; if (descriptor.Type == "boolean") { BooleanExpressionControl ctrl = new BooleanExpressionControl(); ctrl.Expression = exp; this.Children.Add(ctrl); } //if (descriptor.Type == "number") { NumberExpressionControl ctrl = new NumberExpressionControl(); ctrl.Expression = exp; this.Children.Add(ctrl); } /* * else * { * ObjectExpressionControl ctrl = new ObjectExpressionControl(); * ctrl.Expression = exp; * this.Children.Add(ctrl); * }*/ } }
public static ExpressionControl Build(ScratchNet.Expression expression) { if ("boolean".Equals(expression.Type)) { return(new BooleanExpressionControl() { Expression = expression }); } if ("number".Equals(expression.Type)) { return new NumberExpressionControl() { Expression = expression } } ; return(new NumberExpressionControl() { Expression = expression }); }