示例#1
0
        public override void DrawMenu(Control.Base control, bool paddingDisabled)
        {
            int w = control.Width;
            int h = control.Height;

            m_Renderer.DrawColor = m_colControlBright;
            m_Renderer.DrawFilledRect(new Rectangle(0, 0, w, h));

            if (!paddingDisabled)
            {
                m_Renderer.DrawColor = m_colControl;
                m_Renderer.DrawFilledRect(new Rectangle(1, 0, 22, h));
            }

            m_Renderer.DrawColor = m_colControlOutlineNormal;
            m_Renderer.DrawLinedRect(new Rectangle(0, 0, w, h));
        }
示例#2
0
        public override void DrawNumericUpDownButton(Control.Base control, bool depressed, bool up)
        {
            //DrawButton( control.Width, control.Height, depressed, false, true );

            m_Renderer.DrawColor = Color.FromArgb(240, 0, 0, 0);

            Rectangle r = new Rectangle(control.Width / 2 - 2, control.Height / 2 - 2, 5, 5);

            if (up)
            {
                DrawArrowUp(r);
            }
            else
            {
                DrawArrowDown(r);
            }
        }
        public override void DrawProgressBar(Control.Base control, bool horizontal, float progress)
        {
            Rectangle rect = control.RenderBounds;

            if (horizontal)
            {
                Textures.ProgressBar.Back.Draw(Renderer, rect);
                rect.Width = (int)(rect.Width * progress);
                Textures.ProgressBar.Front.Draw(Renderer, rect);
            }
            else
            {
                Textures.ProgressBar.Back.Draw(Renderer, rect);
                rect.Y      = (int)(rect.Y + rect.Height * (1 - progress));
                rect.Height = (int)(rect.Height * progress);
                Textures.ProgressBar.Front.Draw(Renderer, rect);
            }
        }
 public override void DrawButton(Control.Base control, bool depressed, bool hovered, bool disabled)
 {
     if (disabled)
     {
         Textures.Input.Button.Disabled.Draw(Renderer, control.RenderBounds);
         return;
     }
     if (depressed)
     {
         Textures.Input.Button.Pressed.Draw(Renderer, control.RenderBounds);
         return;
     }
     if (hovered)
     {
         Textures.Input.Button.Hovered.Draw(Renderer, control.RenderBounds);
         return;
     }
     Textures.Input.Button.Normal.Draw(Renderer, control.RenderBounds);
 }
示例#5
0
        public override void DrawProgressBar(Control.Base control, bool horizontal, float progress)
        {
            var rect       = control.RenderBounds;
            var fillColour = Color.FromArgb(255, 0, 211, 40);

            if (horizontal)
            {
                //Background
                mRenderer.DrawColor = mColControlDark;
                mRenderer.DrawFilledRect(new Rectangle(1, 1, rect.Width - 2, rect.Height - 2));

                //Right half
                mRenderer.DrawColor = fillColour;
                mRenderer.DrawFilledRect(Util.FloatRect(1, 1, rect.Width * progress - 2, rect.Height - 2));

                mRenderer.DrawColor = Color.FromArgb(150, 255, 255, 255);
                mRenderer.DrawFilledRect(Util.FloatRect(1, 1, rect.Width - 2, rect.Height * 0.45f));
            }
            else
            {
                //Background
                mRenderer.DrawColor = mColControlDark;
                mRenderer.DrawFilledRect(new Rectangle(1, 1, rect.Width - 2, rect.Height - 2));

                //Top half
                mRenderer.DrawColor = fillColour;
                mRenderer.DrawFilledRect(
                    Util.FloatRect(1, 1 + rect.Height * (1 - progress), rect.Width - 2, rect.Height * progress - 2)
                    );

                mRenderer.DrawColor = Color.FromArgb(150, 255, 255, 255);
                mRenderer.DrawFilledRect(Util.FloatRect(1, 1, rect.Width * 0.45f, rect.Height - 2));
            }

            mRenderer.DrawColor = Color.FromArgb(150, 255, 255, 255);
            mRenderer.DrawShavedCornerRect(new Rectangle(1, 1, rect.Width - 2, rect.Height - 2));

            mRenderer.DrawColor = Color.FromArgb(70, 255, 255, 255);
            mRenderer.DrawShavedCornerRect(new Rectangle(2, 2, rect.Width - 4, rect.Height - 4));

            mRenderer.DrawColor = mColBorderColor;
            mRenderer.DrawShavedCornerRect(rect);
        }
        /// <summary>
        /// Color-select button press handler.
        /// </summary>
        /// <param name="control">Event source.</param>
        protected virtual void OnButtonPressed(Control.Base control, EventArgs args)
        {
            Menu menu = new Menu(GetCanvas());

            menu.SetSize(256, 180);
            menu.DeleteOnClose      = true;
            menu.IconMarginDisabled = true;

            HSVColorPicker picker = new HSVColorPicker(menu);

            picker.Dock = Pos.Fill;
            picker.SetSize(256, 128);

            string[] split = m_TextBox.Text.Split(' ');

            picker.SetColor(GetColorFromText(), false, true);
            picker.ColorChanged += OnColorChanged;

            menu.Open(Pos.Right | Pos.Top);
        }
示例#7
0
文件: Base.cs 项目: gered/gwen-dotnet
        public virtual void DrawDebugOutlines(Control.Base control)
        {
            m_Renderer.DrawColor = control.PaddingOutlineColor;
            Rectangle inner = new Rectangle(control.Bounds.Left + control.Padding.Left,
                                            control.Bounds.Top + control.Padding.Top,
                                            control.Bounds.Width - control.Padding.Right - control.Padding.Left,
                                            control.Bounds.Height - control.Padding.Bottom - control.Padding.Top);

            m_Renderer.DrawLinedRect(inner);

            m_Renderer.DrawColor = control.MarginOutlineColor;
            Rectangle outer = new Rectangle(control.Bounds.Left - control.Margin.Left,
                                            control.Bounds.Top - control.Margin.Top,
                                            control.Bounds.Width + control.Margin.Right + control.Margin.Left,
                                            control.Bounds.Height + control.Margin.Bottom + control.Margin.Top);

            m_Renderer.DrawLinedRect(outer);

            m_Renderer.DrawColor = control.BoundsOutlineColor;
            m_Renderer.DrawLinedRect(control.Bounds);
        }
        public override void DrawColorDisplay(Control.Base control, Color color)
        {
            Rectangle rect = control.RenderBounds;

            if (color.A != 255)
            {
                Renderer.DrawColor = Color.FromArgb(255, 255, 255, 255);
                Renderer.DrawFilledRect(rect);

                Renderer.DrawColor = Color.FromArgb(128, 128, 128, 128);

                Renderer.DrawFilledRect(Util.FloatRect(0, 0, rect.Width * 0.5f, rect.Height * 0.5f));
                Renderer.DrawFilledRect(Util.FloatRect(rect.Width * 0.5f, rect.Height * 0.5f, rect.Width * 0.5f, rect.Height * 0.5f));
            }

            Renderer.DrawColor = color;
            Renderer.DrawFilledRect(rect);

            Renderer.DrawColor = Color.Black;
            Renderer.DrawLinedRect(rect);
        }
示例#9
0
        public override void DrawTreeNode(
            Control.Base ctrl,
            bool open,
            bool selected,
            int labelHeight,
            int labelWidth,
            int halfWay,
            int lastBranch,
            bool isRoot
            )
        {
            if (selected)
            {
                Renderer.DrawColor = Color.FromArgb(100, 0, 150, 255);
                Renderer.DrawFilledRect(new Rectangle(17, 0, labelWidth + 2, labelHeight - 1));
                Renderer.DrawColor = Color.FromArgb(200, 0, 150, 255);
                Renderer.DrawLinedRect(new Rectangle(17, 0, labelWidth + 2, labelHeight - 1));
            }

            base.DrawTreeNode(ctrl, open, selected, labelHeight, labelWidth, halfWay, lastBranch, isRoot);
        }
示例#10
0
        public override void DrawMenuItem(Control.Base control, bool submenuOpen, bool isChecked)
        {
            var rect = control.RenderBounds;

            if (submenuOpen || control.IsHovered)
            {
                mRenderer.DrawColor = mColHighlightBg;
                mRenderer.DrawFilledRect(rect);

                mRenderer.DrawColor = mColHighlightBorder;
                mRenderer.DrawLinedRect(rect);
            }

            if (isChecked)
            {
                mRenderer.DrawColor = Color.FromArgb(255, 0, 0, 0);

                var r = new Rectangle(control.Width / 2 - 2, control.Height / 2 - 2, 5, 5);
                DrawCheck(r);
            }
        }
 public override void DrawCategoryInner(Control.Base control, bool collapsed, int headerHeight)
 {
     if (collapsed)
     {
         Textures.CategoryList.CollapsedHeader.Draw(Renderer, control.RenderBounds);
     }
     else
     {
         var b = control.RenderBounds;
         b.Height = headerHeight;
         Textures.CategoryList.Header.Draw(Renderer, b);
         if (control.RenderBounds.Height - headerHeight < 5)
         {
             return;
         }
         b         = control.RenderBounds;
         b.Height -= headerHeight;
         b.Y      += headerHeight;
         Textures.CategoryList.Inner.Draw(Renderer, b);
     }
 }
        public override void DrawWindowCloseButton(Control.Base control, bool depressed, bool hovered, bool disabled)
        {
            if (disabled)
            {
                Textures.Window.Close_Disabled.Draw(Renderer, control.RenderBounds);
                return;
            }

            if (depressed)
            {
                Textures.Window.Close_Down.Draw(Renderer, control.RenderBounds);
                return;
            }

            if (hovered)
            {
                Textures.Window.Close_Hover.Draw(Renderer, control.RenderBounds);
                return;
            }

            Textures.Window.Close.Draw(Renderer, control.RenderBounds);
        }
        public override void DrawComboBoxArrow(Control.Base control, bool hovered, bool down, bool open, bool disabled)
        {
            if (disabled)
            {
                Textures.Input.ComboBox.Button.Disabled.Draw(Renderer, control.RenderBounds);
                return;
            }

            if (down || open)
            {
                Textures.Input.ComboBox.Button.Down.Draw(Renderer, control.RenderBounds);
                return;
            }

            if (hovered)
            {
                Textures.Input.ComboBox.Button.Hover.Draw(Renderer, control.RenderBounds);
                return;
            }

            Textures.Input.ComboBox.Button.Normal.Draw(Renderer, control.RenderBounds);
        }
        public override void DrawScrollButton(Control.Base control, Pos direction, bool depressed, bool hovered, bool disabled)
        {
            int i = 0;

            if (direction == Pos.Top)
            {
                i = 1;
            }

            if (direction == Pos.Right)
            {
                i = 2;
            }

            if (direction == Pos.Bottom)
            {
                i = 3;
            }

            if (disabled)
            {
                Textures.Scroller.Button.Disabled[i].Draw(Renderer, control.RenderBounds);
                return;
            }

            if (depressed)
            {
                Textures.Scroller.Button.Down[i].Draw(Renderer, control.RenderBounds);
                return;
            }

            if (hovered)
            {
                Textures.Scroller.Button.Hover[i].Draw(Renderer, control.RenderBounds);
                return;
            }

            Textures.Scroller.Button.Normal[i].Draw(Renderer, control.RenderBounds);
        }
示例#15
0
文件: Base.cs 项目: gered/gwen-dotnet
        public virtual void DrawPropertyRow(Control.Base control, int iWidth, bool bBeingEdited, bool hovered)
        {
            Rectangle rect = control.RenderBounds;

            if (bBeingEdited)
            {
                m_Renderer.DrawColor = Colors.Properties.Column_Selected;
            }
            else if (hovered)
            {
                m_Renderer.DrawColor = Colors.Properties.Column_Hover;
            }
            else
            {
                m_Renderer.DrawColor = Colors.Properties.Column_Normal;
            }

            m_Renderer.DrawFilledRect(new Rectangle(0, rect.Y, iWidth, rect.Height));

            if (bBeingEdited)
            {
                m_Renderer.DrawColor = Colors.Properties.Line_Selected;
            }
            else if (hovered)
            {
                m_Renderer.DrawColor = Colors.Properties.Line_Hover;
            }
            else
            {
                m_Renderer.DrawColor = Colors.Properties.Line_Normal;
            }

            m_Renderer.DrawFilledRect(new Rectangle(iWidth, rect.Y, 1, rect.Height));

            rect.Y     += rect.Height - 1;
            rect.Height = 1;

            m_Renderer.DrawFilledRect(rect);
        }
示例#16
0
        public override void DrawSlider(Control.Base control, bool horizontal, int numNotches, int barSize)
        {
            var rect      = control.RenderBounds;
            var notchRect = rect;

            if (horizontal)
            {
                rect.Y      += (int)(rect.Height * 0.4f);
                rect.Height -= (int)(rect.Height * 0.8f);
            }
            else
            {
                rect.X     += (int)(rect.Width * 0.4f);
                rect.Width -= (int)(rect.Width * 0.8f);
            }

            mRenderer.DrawColor = mColBgDark;
            mRenderer.DrawFilledRect(rect);

            mRenderer.DrawColor = mColControlDarker;
            mRenderer.DrawLinedRect(rect);
        }
        public override void DrawComboBox(Control.Base control, bool down, bool open)
        {
            if (control.IsDisabled)
            {
                Textures.Input.ComboBox.Disabled.Draw(Renderer, control.RenderBounds);
                return;
            }

            if (down || open)
            {
                Textures.Input.ComboBox.Down.Draw(Renderer, control.RenderBounds);
                return;
            }

            if (control.IsHovered)
            {
                Textures.Input.ComboBox.Down.Draw(Renderer, control.RenderBounds);
                return;
            }

            Textures.Input.ComboBox.Normal.Draw(Renderer, control.RenderBounds);
        }
示例#18
0
        public override void DrawTextBox(Control.Base control)
        {
            var rect      = control.RenderBounds;
            var bHasFocus = control.HasFocus;

            // Box inside
            mRenderer.DrawColor = Color.FromArgb(255, 255, 255, 255);
            mRenderer.DrawFilledRect(new Rectangle(1, 1, rect.Width - 2, rect.Height - 2));

            mRenderer.DrawColor = mColControlOutlineLight;
            mRenderer.DrawFilledRect(new Rectangle(rect.X + 1, rect.Y, rect.Width - 2, 1));
            mRenderer.DrawFilledRect(new Rectangle(rect.X, rect.Y + 1, 1, rect.Height - 2));

            mRenderer.DrawColor = mColControlOutlineLighter;
            mRenderer.DrawFilledRect(new Rectangle(rect.X + 1, rect.Y + rect.Height - 1, rect.Width - 2, 1));
            mRenderer.DrawFilledRect(new Rectangle(rect.X + rect.Width - 1, rect.Y + 1, 1, rect.Height - 2));

            if (bHasFocus)
            {
                mRenderer.DrawColor = Color.FromArgb(150, 50, 200, 255);
                mRenderer.DrawLinedRect(rect);
            }
        }
 private void DrawActiveTabButton(Control.Base control, Pos dir)
 {
     if (dir == Pos.Top)
     {
         Textures.Tab.Top.Active.Draw(Renderer, control.RenderBounds.Add(new Rectangle(0, 0, 0, 8)));
         return;
     }
     if (dir == Pos.Left)
     {
         Textures.Tab.Left.Active.Draw(Renderer, control.RenderBounds.Add(new Rectangle(0, 0, 8, 0)));
         return;
     }
     if (dir == Pos.Bottom)
     {
         Textures.Tab.Bottom.Active.Draw(Renderer, control.RenderBounds.Add(new Rectangle(0, -8, 0, 8)));
         return;
     }
     if (dir == Pos.Right)
     {
         Textures.Tab.Right.Active.Draw(Renderer, control.RenderBounds.Add(new Rectangle(-8, 0, 8, 0)));
         return;
     }
 }
示例#20
0
        public override void DrawTreeButton(Control.Base control, bool open)
        {
            var rect = control.RenderBounds;

            rect.X      += 2;
            rect.Y      += 2;
            rect.Width  -= 4;
            rect.Height -= 4;

            mRenderer.DrawColor = mColControlBright;
            mRenderer.DrawFilledRect(rect);

            mRenderer.DrawColor = mColBorderColor;
            mRenderer.DrawLinedRect(rect);

            mRenderer.DrawColor = mColBorderColor;

            if (!open) // ! because the button shows intention, not the current state
            {
                mRenderer.DrawFilledRect(new Rectangle(rect.X + rect.Width / 2, rect.Y + 2, 1, rect.Height - 4));
            }

            mRenderer.DrawFilledRect(new Rectangle(rect.X + 2, rect.Y + rect.Height / 2, rect.Width - 4, 1));
        }
        public override void DrawSlider(Control.Base control, bool horizontal, int numNotches, int barSize)
        {
            Rectangle rect = control.RenderBounds;

            Renderer.DrawColor = Color.FromArgb(100, 0, 0, 0);

            if (horizontal)
            {
                rect.X     += (int)(barSize * 0.5);
                rect.Width -= barSize;
                rect.Y     += (int)(rect.Height * 0.5 - 1);
                rect.Height = 1;
                DrawSliderNotchesH(rect, numNotches, barSize * 0.5f);
                Renderer.DrawFilledRect(rect);
                return;
            }

            rect.Y      += (int)(barSize * 0.5);
            rect.Height -= barSize;
            rect.X      += (int)(rect.Width * 0.5 - 1);
            rect.Width   = 1;
            DrawSliderNotchesV(rect, numNotches, barSize * 0.4f);
            Renderer.DrawFilledRect(rect);
        }
示例#22
0
文件: Base.cs 项目: gered/gwen-dotnet
 public virtual void DrawCategoryInner(Control.Base control, bool collapsed)
 {
 }
示例#23
0
文件: Base.cs 项目: gered/gwen-dotnet
 public virtual void DrawCategoryHolder(Control.Base control)
 {
 }
示例#24
0
文件: Base.cs 项目: gered/gwen-dotnet
 public virtual void DrawMenuDivider(Control.Base control)
 {
 }
示例#25
0
文件: Base.cs 项目: gered/gwen-dotnet
 public virtual void DrawModalControl(Control.Base control)
 {
 }
示例#26
0
文件: Base.cs 项目: gered/gwen-dotnet
 public virtual void DrawColorDisplay(Control.Base control, Color color)
 {
 }
示例#27
0
文件: Base.cs 项目: gered/gwen-dotnet
 public virtual void DrawButton(Control.Base control, bool depressed, bool hovered, bool disabled)
 {
 }
示例#28
0
文件: Base.cs 项目: gered/gwen-dotnet
 public virtual void DrawTreeControl(Control.Base control)
 {
 }
示例#29
0
文件: Base.cs 项目: gered/gwen-dotnet
 public virtual void DrawTreeButton(Control.Base control, bool open)
 {
 }
示例#30
0
 private void OnCategorySelect(Base control)
 {
     if (m_LastControl != null)
     {
         m_LastControl.Hide();
     }
     Base test = control.UserData.Get<Base>("test");
     test.Show();
     m_LastControl = test;
 }
示例#31
0
文件: Base.cs 项目: gered/gwen-dotnet
 public virtual void DrawTabButton(Control.Base control, bool active, Pos dir)
 {
 }
示例#32
0
 private void OnCategorySelect(Base control, EventArgs args)
 {
     if (m_LastControl != null)
     {
         m_LastControl.Hide();
     }
     Base test = control.UserData as Base;
     test.Show();
     m_LastControl = test;
 }