コード例 #1
0
        public ColorChooser(string name) : base(name)
        {
            IsActive = false;
            _window  = new UIWindow()
            {
                Size              = new Vector2(270, 420),
                AnchorPoint       = new Vector2(0.5f, 0.5f),
                CloseButtonOffset = new Vector2(0, 0),
            };
            _window.OnClose += _window_OnClose;
            ZIndex           = 0.15f;

            // 下半部分
            var chooser = new UIElement()
            {
                SizeFactor  = new Vector2(1f, 0.5f),
                AnchorPoint = new Vector2(0.5f, 1f),
                Pivot       = new Vector2(0.5f, 1f),
            };
            var chooserContainer = new UIElement()
            {
                Pivot      = new Vector2(0, 0),
                SizeFactor = new Vector2(1, 1),
                Size       = new Vector2(-20, -20),
                Position   = new Vector2(10, 10),
            };

            var labelR = new UILabel()
            {
                AnchorPoint = new Vector2(0, 0.5f),
                Pivot       = new Vector2(0, 0.5f),
                Text        = "R",
                TextColor   = Color.Red,
            };

            _R = new UIValueSlider()
            {
                Min        = 0,
                Max        = 255,
                Pivot      = new Vector2(0, 0),
                SizeFactor = new Vector2(1, 1),
            };
            var R = new UITableBar(labelR, _R)
            {
                SizeFactor = new Vector2(1f, 0f),
                Size       = new Vector2(0, 30f),
                Division   = 0.15f,
                Pivot      = new Vector2(0, 0),
            };

            AppendChild(_window);
            _window.AppendChild(chooser);
            chooser.AppendChild(chooserContainer);
            chooserContainer.AppendChild(R);
            var labelG = new UILabel()
            {
                AnchorPoint = new Vector2(0, 0.5f),
                Pivot       = new Vector2(0, 0.5f),
                Text        = "G",
                TextColor   = Color.LimeGreen,
            };

            _G = new UIValueSlider()
            {
                Min        = 0,
                Max        = 255,
                Pivot      = new Vector2(0, 0),
                SizeFactor = new Vector2(1, 1),
            };
            var G = new UITableBar(labelG, _G)
            {
                SizeFactor = new Vector2(1f, 0f),
                Size       = new Vector2(0, 30f),
                Division   = 0.15f,
                Pivot      = new Vector2(0, 0),
                Position   = new Vector2(0, 40),
            };

            chooserContainer.AppendChild(G);
            var labelB = new UILabel()
            {
                AnchorPoint = new Vector2(0, 0.5f),
                Pivot       = new Vector2(0, 0.5f),
                Text        = "B",
                TextColor   = Color.Cyan,
            };

            _B = new UIValueSlider()
            {
                Min        = 0,
                Max        = 255,
                Pivot      = new Vector2(0, 0),
                SizeFactor = new Vector2(1, 1),
            };
            var B = new UITableBar(labelB, _B)
            {
                SizeFactor = new Vector2(1f, 0f),
                Size       = new Vector2(0, 30f),
                Division   = 0.15f,
                Pivot      = new Vector2(0, 0),
                Position   = new Vector2(0, 80),
            };

            chooserContainer.AppendChild(B);
            var labelA = new UILabel()
            {
                AnchorPoint = new Vector2(0, 0.5f),
                Pivot       = new Vector2(0, 0.5f),
                Text        = "A",
                TextColor   = Color.White,
            };

            _A = new UIValueSlider()
            {
                Min        = 0,
                Max        = 255,
                Pivot      = new Vector2(0, 0),
                SizeFactor = new Vector2(1, 1),
            };
            var A = new UITableBar(labelA, _A)
            {
                SizeFactor = new Vector2(1f, 0f),
                Size       = new Vector2(0, 30f),
                Division   = 0.15f,
                Pivot      = new Vector2(0, 0),
                Position   = new Vector2(0, 120),
            };

            chooserContainer.AppendChild(A);


            var labelHex = new UILabel()
            {
                AnchorPoint = new Vector2(0, 0.5f),
                Pivot       = new Vector2(0, 0.5f),
                Text        = "Hex",
                TextColor   = Color.White,
            };

            _hex = new UILabel()
            {
                Pivot       = new Vector2(0, 0.5f),
                AnchorPoint = new Vector2(0, 0.5f),
                Position    = new Vector2(20, 0),
            };
            var hex = new UITableBar(labelHex, _hex)
            {
                SizeFactor = new Vector2(1f, 0f),
                Size       = new Vector2(0, 30f),
                Division   = 0.15f,
                Pivot      = new Vector2(0, 0),
                Position   = new Vector2(0, 160),
            };

            _preview = new ColorPreviwer()
            {
                SizeFactor  = new Vector2(0f, 0f),
                Size        = new Vector2(72f, 24f),
                Pivot       = new Vector2(1, 1),
                AnchorPoint = new Vector2(1, 1),
                Position    = new Vector2(0, -3),
            };
            chooserContainer.AppendChild(hex);
            chooserContainer.AppendChild(_preview);



            // 上半部分

            var colorView = new UIElement()
            {
                SizeFactor  = new Vector2(1f, 0.5f),
                AnchorPoint = new Vector2(0.5f, 0f),
                Pivot       = new Vector2(0.5f, 0f),
                Position    = new Vector2(0, 30),
                Size        = new Vector2(0, -30f),
            };
            var colorViewContainer = new UIElement()
            {
                Pivot      = new Vector2(0, 0),
                SizeFactor = new Vector2(1, 1),
                Size       = new Vector2(-20, -20),
                Position   = new Vector2(10, 10),
            };

            _window.AppendChild(colorView);
            colorView.AppendChild(colorViewContainer);


            _colorBar = new UIColorBar()
            {
                Pivot       = new Vector2(1f, 1f),
                AnchorPoint = new Vector2(1f, 1f),
                SizeFactor  = new Vector2(0f, 1f),
                Size        = new Vector2(25f, -5f),
                Position    = new Vector2(-20, 0),
            };
            _colorRect = new UIColorRect()
            {
                Pivot       = new Vector2(0f, 0.5f),
                AnchorPoint = new Vector2(0f, 0.5f),
                Size        = new Vector2(128, 128),
                Position    = new Vector2(30, 0),
            };
            colorViewContainer.AppendChild(_colorBar);
            colorViewContainer.AppendChild(_colorRect);

            _R.OnValueChanged         += _R_OnValueChanged;
            _G.OnValueChanged         += _R_OnValueChanged;
            _B.OnValueChanged         += _R_OnValueChanged;
            _A.OnValueChanged         += _R_OnValueChanged;
            _colorBar.OnValueChanged  += _colorBar_OnValueChanged;
            _colorRect.OnValueChanged += _colorBar_OnValueChanged;
        }
コード例 #2
0
ファイル: TestState2.cs プロジェクト: CXUtk/UI-Editor
        public override void Initialize()
        {
            base.Initialize();
            var button = new UIButton()
            {
                Name     = "tbDebug",
                Size     = new Vector2(10 * 16, 3 * 16),
                Position = new Vector2(10 * 16, 3 * 16) / 2
            };
            var box13 = new UIWindow()
            {
                Name        = "a",
                Size        = new Vector2(800, 640),
                AnchorPoint = new Vector2(0.5f, 0.5f),
                Position    = new Vector2(100, 100)
            };
            var textbox = new UITextArea {
                Name        = "emmm",
                Size        = new Vector2(20 * 16, 6.5f * 16),
                Position    = new Vector2(0, 300),
                Pivot       = new Vector2(0.5f, 0),
                AnchorPoint = new Vector2(0.5f, 0),
                TextAlign   = Enums.Align.TopLeft
            };
            //var menu = new UIMenu() {
            //    Name = "text menu",
            //    Pivot = new Vector2(0.5f, 0),
            //    AnchorPoint = new Vector2(0.5f, 0),
            //};
            var checkbox = new UICheckBox {
                Tooltip  = "Debug模式",
                Name     = "test checkbox",
                Position = new Vector2(90, 90)
            };
            var colorwheel = new UIColorBar()
            {
                Position = new Vector2(200, 200),
                Size     = new Vector2(128, 128),
            };

            //var selector = new UIEnumSelector<TypeCode>() {
            //    Position = new Vector2(140, 280),
            //    Size = new Vector2(100, 30),
            //    Pivot = new Vector2(0, 0),
            //    AnchorPoint = new Vector2(0, 0)
            //};
            //selector.HangElement = box13;

            checkbox.OnCheckedChange += Checkbox_OnCheckedChange;
            button.OnClick           += (e, sender) => {
                switch (textbox.TextAlign)
                {
                case Enums.Align.Top:
                    textbox.TextAlign = Enums.Align.TopRight;
                    break;

                case Enums.Align.TopRight:
                    textbox.TextAlign = Enums.Align.Right;
                    break;

                case Enums.Align.Right:
                    textbox.TextAlign = Enums.Align.BottomRight;
                    break;

                case Enums.Align.BottomRight:
                    textbox.TextAlign = Enums.Align.Bottom;
                    break;

                case Enums.Align.Bottom:
                    textbox.TextAlign = Enums.Align.BottomLeft;
                    break;

                case Enums.Align.BottomLeft:
                    textbox.TextAlign = Enums.Align.Left;
                    break;

                case Enums.Align.Left:
                    textbox.TextAlign = Enums.Align.TopLeft;
                    break;

                case Enums.Align.TopLeft:
                    textbox.TextAlign = Enums.Align.Top;
                    break;
                }
                button.Text = textbox.TextAlign.ToString();
            };
            box13.OnClose += Box1_OnClose;
            AppendChild(box13);
            box13.AppendChild(textbox);
            //{
            //    var item1 = new UIMenuItem();
            //    item1.Text = nameof(item1);
            //    item1.AddItem(new UIMenuItem { Text = "item1.item1" });
            //    item1.AddItem(new UIMenuItem { Text = "item1.item2" });
            //    item1.AddItem(new UIMenuItem { Text = "item1.item3" });
            //    menu.AddItem(item1);
            //    var item2 = new UIMenuItem();
            //    item2.Text = nameof(item2);
            //    item2.AddItem(new UIMenuItem { Text = "item2.item1" });
            //    item2.AddItem(new UIMenuItem { Text = "item2.item2" });
            //    menu.AddItem(item2);
            //    {
            //        var item2_3 = new UIMenuItem();
            //        item2_3.Text = "item2.item3";
            //        item2_3.AddItem(new UIMenuItem { Text = "item231" });
            //        item2_3.AddItem(new UIMenuItem { Text = "item232" });
            //        item2_3.AddItem(new UIMenuItem { Text = "item233" });
            //        item2_3.AddItem(new UIMenuItem { Text = "item234" });
            //        item2.AddItem(item2_3);
            //    }
            //}

            var scrollBarH = new UIScrollBarH()
            {
                AnchorPoint = new Vector2(0.5f, 1),
                Pivot       = new Vector2(0.5f, 1),
                SizeFactor  = new Vector2(1f, 0f),
                Size        = new Vector2(0, 20),
            };

            box13.AppendChild(scrollBarH);
            box13.AppendChild(button);
            box13.AppendChild(checkbox);
            //box13.AppendChild(button2);
            // box13.AppendChild(selector);
            //box13.AppendChild(colorwheel);
            //UIValueSlider slider = new UIValueSlider() {
            //    Position = new Vector2(400, 300),
            //    Size = new Vector2(230, 30),
            //    Min = 0,
            //    Max = 255,
            //};
            //box13.AppendChild(slider);
        }