Ejemplo n.º 1
0
        public TestSceneRecognition()
        {
            cameraManager = createSuitableCameraManager(Scheduler);

            Add(cameraSpriteContainer = new Container {
                RelativeSizeAxes = Axes.Both
            });

            Add(new FillFlowContainer
            {
                AutoSizeAxes = Axes.Y,
                Direction    = FillDirection.Vertical,
                Width        = 200.0f,
                Margin       = new MarginPadding(5),
                Spacing      = new Vector2(0, 5),
                Anchor       = Anchor.TopRight,
                Origin       = Anchor.TopRight,
                Children     = new Drawable[]
                {
                    cameraTypeSelector = new BasicDropdown <CameraType>
                    {
                        RelativeSizeAxes = Axes.X,
                        Items            = Enum.GetValues <CameraType>(),
                    },
                    virtualCameraControls = new FillFlowContainer
                    {
                        AutoSizeAxes     = Axes.Y,
                        Direction        = FillDirection.Vertical,
                        RelativeSizeAxes = Axes.X,
                        Spacing          = new Vector2(0, 5),
                        Children         = new Drawable[]
                        {
                            virtualCameraLooping = new BasicCheckbox {
                                LabelText = @"Toggle Looping"
                            },
                            pauseButton = new BasicButton
                            {
                                Text             = @"Pause",
                                Height           = 40,
                                RelativeSizeAxes = Axes.X,
                                Action           = () =>
                                {
                                    if (Camera is CameraVirtual virtualCamera)
                                    {
                                        if (virtualCamera.Paused)
                                        {
                                            pauseButton.Text = @"Pause";
                                            virtualCamera.Resume();
                                        }
                                        else
                                        {
                                            pauseButton.Text = @"Unpause";
                                            virtualCamera.Pause();
                                        }
                                    }
                                }
                            }
                        }
                    },
Ejemplo n.º 2
0
        public TestSceneCheckboxes()
        {
            BasicCheckbox swap, rotate;

            Children = new Drawable[]
            {
                new FillFlowContainer
                {
                    Anchor       = Anchor.TopLeft,
                    Origin       = Anchor.TopLeft,
                    Direction    = FillDirection.Vertical,
                    Spacing      = new Vector2(0, 10),
                    Padding      = new MarginPadding(10),
                    AutoSizeAxes = Axes.Both,
                    Children     = new Drawable[]
                    {
                        basic = new BasicCheckbox
                        {
                            LabelText = @"Basic Test"
                        },
                        new BasicCheckbox
                        {
                            LabelText    = @"FadeDuration Test",
                            FadeDuration = 300
                        },
                        swap = new BasicCheckbox
                        {
                            LabelText = @"Checkbox Position",
                        },
                        rotate = new BasicCheckbox
                        {
                            LabelText = @"Enabled/Disabled Actions Test",
                        },
                    }
                }
            };

            swap.Current.ValueChanged   += check => swap.RightHandedCheckbox = check.NewValue;
            rotate.Current.ValueChanged += e => rotate.RotateTo(e.NewValue ? 45 : 0, 100);
        }
Ejemplo n.º 3
0
        private void load(TestBrowser browser)
        {
            BasicCheckbox runAllStepsCheckbox;

            InternalChild = new FillFlowContainer
            {
                Spacing          = new Vector2(5),
                Direction        = FillDirection.Horizontal,
                RelativeSizeAxes = Axes.Y,
                AutoSizeAxes     = Axes.X,
                Children         = new Drawable[]
                {
                    new SpriteText
                    {
                        Padding = new MarginPadding(5),
                        Text    = "Assembly:"
                    },
                    assemblyDropdown = new BasicDropdown <Assembly>
                    {
                        Width = 250,
                    },
                    runAllStepsCheckbox = new BasicCheckbox
                    {
                        LabelText    = "Run all steps",
                        LabelPadding = new MarginPadding {
                            Left = 5, Right = 10
                        },
                        AutoSizeAxes = Axes.Y,
                        Width        = 140,
                        Anchor       = Anchor.CentreLeft,
                        Origin       = Anchor.CentreLeft,
                    },
                }
            };

            assemblyDropdown.Current.BindTo(browser.Assembly);
            runAllStepsCheckbox.Current.BindTo(browser.RunAllSteps);
        }
Ejemplo n.º 4
0
            private void load()
            {
                SpriteText playbackSpeedDisplay;

                InternalChildren = new Drawable[]
                {
                    new Box
                    {
                        RelativeSizeAxes = Axes.Both,
                        Colour           = Color4.Black,
                    },
                    new Container
                    {
                        Padding          = new MarginPadding(10),
                        RelativeSizeAxes = Axes.Both,
                        Child            = new GridContainer
                        {
                            RelativeSizeAxes = Axes.Both,
                            ColumnDimensions = new[]
                            {
                                new Dimension(GridSizeMode.AutoSize),
                                new Dimension(GridSizeMode.Distributed),
                            },
                            Content = new[]
                            {
                                new Drawable[]
                                {
                                    new FillFlowContainer
                                    {
                                        Spacing          = new Vector2(5),
                                        Direction        = FillDirection.Horizontal,
                                        RelativeSizeAxes = Axes.Y,
                                        AutoSizeAxes     = Axes.X,
                                        Children         = new Drawable[]
                                        {
                                            new SpriteText
                                            {
                                                Padding = new MarginPadding(5),
                                                Text    = "Current Assembly:"
                                            },
                                            AssemblyDropdown = new BasicDropdown <Assembly>
                                            {
                                                Width = 300,
                                            },
                                            RunAllSteps = new BasicCheckbox
                                            {
                                                LabelText    = "Run all steps",
                                                AutoSizeAxes = Axes.Y,
                                                Width        = 140,
                                                Anchor       = Anchor.CentreLeft,
                                                Origin       = Anchor.CentreLeft,
                                            },
                                        }
                                    },
                                    new GridContainer
                                    {
                                        RelativeSizeAxes = Axes.Both,
                                        ColumnDimensions = new[]
                                        {
                                            new Dimension(GridSizeMode.AutoSize),
                                            new Dimension(GridSizeMode.Distributed),
                                            new Dimension(GridSizeMode.AutoSize),
                                        },
                                        Content = new[]
                                        {
                                            new Drawable[]
                                            {
                                                new SpriteText
                                                {
                                                    Padding = new MarginPadding(5),
                                                    Text    = "Rate:"
                                                },
                                                RateAdjustSlider = new BasicSliderBar <double>
                                                {
                                                    RelativeSizeAxes = Axes.Both,
                                                    Colour           = Color4.MediumPurple,
                                                    SelectionColor   = Color4.White,
                                                },
                                                playbackSpeedDisplay = new SpriteText
                                                {
                                                    Padding = new MarginPadding(5),
                                                },
                                            }
                                        }
                                    }
                                }
                            },
                        },
                    },
                };

                RateAdjustSlider.Current.ValueChanged += v => playbackSpeedDisplay.Text = v.ToString("0%");
            }
Ejemplo n.º 5
0
                public MarginPaddingControl(SafeAreaContainer safeAreaBackground, SafeAreaContainer safeAreaGrid, string title, Bindable <float> bindable, Edges edge)
                {
                    SpriteText    valueText;
                    BasicCheckbox overrideCheckbox;
                    BasicCheckbox safeCheckbox;

                    Direction    = FillDirection.Horizontal;
                    Spacing      = new Vector2(20, 0);
                    AutoSizeAxes = Axes.Both;

                    Children = new Drawable[]
                    {
                        new SpriteText
                        {
                            Text   = title,
                            Width  = 60,
                            Origin = Anchor.CentreLeft,
                            Anchor = Anchor.CentreLeft,
                        },
                        valueText = new SpriteText
                        {
                            Width  = 50,
                            Origin = Anchor.CentreLeft,
                            Anchor = Anchor.CentreLeft,
                        },
                        new BasicSliderBar <float>
                        {
                            Current = bindable,
                            Size    = new Vector2(100, 20),
                            Origin  = Anchor.CentreLeft,
                            Anchor  = Anchor.CentreLeft,
                        },
                        new SpriteText
                        {
                            Text   = "Background Override",
                            Origin = Anchor.CentreLeft,
                            Anchor = Anchor.CentreLeft,
                        },
                        overrideCheckbox = new BasicCheckbox(),
                        new SpriteText
                        {
                            Text   = "Grid Override",
                            Origin = Anchor.CentreLeft,
                            Anchor = Anchor.CentreLeft,
                        },
                        safeCheckbox = new BasicCheckbox()
                    };

                    overrideCheckbox.Current.ValueChanged += e =>
                    {
                        if (e.NewValue)
                        {
                            safeAreaBackground.SafeAreaOverrideEdges |= edge;
                        }
                        else
                        {
                            safeAreaBackground.SafeAreaOverrideEdges &= ~edge;
                        }
                    };

                    safeCheckbox.Current.ValueChanged += e =>
                    {
                        if (e.NewValue)
                        {
                            safeAreaGrid.SafeAreaOverrideEdges |= edge;
                        }
                        else
                        {
                            safeAreaGrid.SafeAreaOverrideEdges &= ~edge;
                        }
                    };

                    bindable.ValueChanged += e => valueText.Text = $"{e.NewValue:F1}";
                    bindable.TriggerChange();
                }