예제 #1
0
        public void SetupRebindPanel()
        {
            GridContainer Container = new GridContainer()
            {
                Columns = 2,
            };

            Container.AddConstantOverride("hseparation", 25);
            Container.AddConstantOverride("vseparation", 5);

            rebindPanel.GetChild(0).AddChild(Container);

            Container.AddChild(new Label() { Text = "Action"});
            Container.AddChild(new Label() { Text = "Keyboard" });


            for (int i = 0; i < allActions.Length; i++)
            {
                if (allActions[i].KeyboardBinding != null)
                {
                    for (int j = 0; j < allActions[i].KeyboardBinding.Length; j++)
                    {
                        Container.AddChild(new Label() { Text = allActions[i].KeyboardBinding[j].Name });
                        Container.AddChild(new Button() { Text = ((KeyList)(allActions[i].KeyboardBinding[j].Key)).ToString()  });
                    }
                }
            }
        }
예제 #2
0
    private void HandleEnvironmentResize(int height, int columns, int vseparation, int hseparation)
    {
        panelsTween.InterpolateProperty(
            environmentPanel, "rect_min_size", environmentPanel.RectMinSize, new Vector2(195, height), 0.3f);
        panelsTween.Start();

        environmentPanelBarContainer.Columns = columns;
        environmentPanelBarContainer.AddConstantOverride("vseparation", vseparation);
        environmentPanelBarContainer.AddConstantOverride("hseparation", hseparation);
    }
예제 #3
0
    public void ResizeEnvironmentPanel(string mode)
    {
        var bars = environmentPanelBarContainer.GetChildren();

        if (mode == "compress" && !environmentCompressed)
        {
            environmentCompressed = true;

            panelsTween.InterpolateProperty(
                environmentPanel, "rect_min_size", environmentPanel.RectMinSize, new Vector2(195, 170), 0.3f);
            panelsTween.Start();

            environmentPanelBarContainer.Columns = 2;
            environmentPanelBarContainer.AddConstantOverride("vseparation", 20);
            environmentPanelBarContainer.AddConstantOverride("hseparation", 17);

            foreach (ProgressBar bar in bars)
            {
                panelsTween.InterpolateProperty(
                    bar, "rect_min_size", new Vector2(95, 25), new Vector2(73, 25), 0.3f);
                panelsTween.Start();

                bar.GetNode <Label>("Label").Hide();
                bar.GetNode <Label>("Value").Align = Label.AlignEnum.Center;
            }
        }

        if (mode == "expand" && environmentCompressed)
        {
            environmentCompressed = false;

            panelsTween.InterpolateProperty(
                environmentPanel, "rect_min_size", environmentPanel.RectMinSize, new Vector2(195, 224), 0.3f);
            panelsTween.Start();

            environmentPanelBarContainer.Columns = 1;
            environmentPanelBarContainer.AddConstantOverride("vseparation", 4);
            environmentPanelBarContainer.AddConstantOverride("hseparation", 0);

            foreach (ProgressBar bar in bars)
            {
                panelsTween.InterpolateProperty(bar, "rect_min_size", bar.RectMinSize, new Vector2(162, 25), 0.3f);
                panelsTween.Start();

                bar.GetNode <Label>("Label").Show();
                bar.GetNode <Label>("Value").Align = Label.AlignEnum.Right;
            }
        }
    }
예제 #4
0
    public void ResizeCompoundPanel(string mode)
    {
        var bars = compoundsPanelBarContainer.GetChildren();

        if (mode == "compress" && !compundCompressed)
        {
            compundCompressed = true;
            compoundsPanelBarContainer.AddConstantOverride("vseparation", 20);
            compoundsPanelBarContainer.AddConstantOverride("hseparation", 14);

            if (bars.Count < 4)
            {
                compoundsPanelBarContainer.Columns = 2;
            }
            else
            {
                compoundsPanelBarContainer.Columns = 3;
            }

            foreach (ProgressBar bar in bars)
            {
                panelsTween.InterpolateProperty(bar, "rect_min_size", new Vector2(90, 25), new Vector2(64, 25), 0.3f);
                panelsTween.Start();

                bar.GetNode <Label>("Label").Hide();
            }
        }

        if (mode == "expand" && compundCompressed)
        {
            compundCompressed = false;
            compoundsPanelBarContainer.Columns = 1;
            compoundsPanelBarContainer.AddConstantOverride("vseparation", 5);
            compoundsPanelBarContainer.AddConstantOverride("hseparation", 0);

            foreach (ProgressBar bar in bars)
            {
                panelsTween.InterpolateProperty(bar, "rect_min_size", bar.RectMinSize, new Vector2(220, 25), 0.3f);
                panelsTween.Start();

                bar.GetNode <Label>("Label").Show();
            }
        }
    }
예제 #5
0
    public void ResizeEnvironmentPanel(string mode)
    {
        var bars = environmentPanelBarContainer.GetChildren();

        if (mode == "compress" && !environmentCompressed)
        {
            environmentCompressed = true;

            GUICommon.Instance.TweenUIProperty(
                environmentPanel, "rect_min_size", environmentPanel.RectMinSize, new Vector2(195, 170), 0.3f);
            environmentPanelBarContainer.Columns = 2;
            environmentPanelBarContainer.AddConstantOverride("vseparation", 20);

            foreach (Node bar in bars)
            {
                var progressBar = bar.GetNode <ProgressBar>("Bar");

                GUICommon.Instance.TweenUIProperty(
                    progressBar, "rect_min_size", new Vector2(95, 25), new Vector2(73, 25), 0.3f);
                progressBar.GetNode <Label>("Label").Hide();
                progressBar.GetNode <Label>("Value").Align = Label.AlignEnum.Center;
            }
        }

        if (mode == "expand" && environmentCompressed)
        {
            environmentCompressed = false;

            GUICommon.Instance.TweenUIProperty(
                environmentPanel, "rect_min_size", environmentPanel.RectMinSize, new Vector2(195, 224), 0.3f);
            environmentPanelBarContainer.Columns = 1;
            environmentPanelBarContainer.AddConstantOverride("vseparation", 4);

            foreach (Node bar in bars)
            {
                var progressBar = bar.GetNode <ProgressBar>("Bar");

                GUICommon.Instance.TweenUIProperty(
                    progressBar, "rect_min_size", progressBar.RectMinSize, new Vector2(162, 25), 0.3f);
                progressBar.GetNode <Label>("Label").Show();
                progressBar.GetNode <Label>("Value").Align = Label.AlignEnum.Left;
            }
        }
    }