public override void Render(SpriteBatch spriteBatch, FieldFontRenderer fieldFontRenderer) { if (!Hidden) { NinePatchRegion2D ninePatch = _releasedNinePatch; if (SliderState == SliderState.Hover && Root.MouseMode == true) { ninePatch = _hoverNinePatch; } if (this.isSelected == true && Root.MouseMode == false) { ninePatch = _hoverNinePatch; } if (SliderState == SliderState.Pressed) { ninePatch = _pressedNinePatch; } spriteBatch.Draw(ninePatch, new Rectangle((int)TopLeft.X, (int)(TopLeft.Y + (Height / 2) - Height / 20), (int)Width, (int)Height / 10), Color.Green); SliderButton.Render(spriteBatch, fieldFontRenderer); } }
protected override void OnRender(WindowManager uiRenderer, SpriteBatch sb, Texture2D uiTexture) { int spriteRegionY; if (!IsEnabled) { spriteRegionY = SPRITE_Y_DISABLED; } else if (IsFocused && _Pressed) { spriteRegionY = SPRITE_Y_FOCUSED_PRESSED; } else if (IsFocused) { spriteRegionY = SPRITE_Y_FOCUSED; } else if (_Pressed) { spriteRegionY = SPRITE_Y_PRESSED; } else { spriteRegionY = SPRITE_Y_NORMAL; } var frameRegion = new NinePatchRegion2D(new TextureRegion2D(uiTexture, new Rectangle(SPRITE_X, spriteRegionY, SPRITE_WIDTH, SPRITE_HEIGHT)), new MonoGame.Extended.Thickness(SPRITE_9P_PADDING_X, SPRITE_9P_PADDING_Y)); sb.Begin(); sb.Draw(frameRegion, Bounds, Color.White); sb.DrawString(TextFont, Text, _TextLocation, TextColor); sb.End(); }
public override void Render(SpriteBatch spriteBatch, FieldFontRenderer fieldFontRenderer) { if (!Hidden) { NinePatchRegion2D ninePatch = _releasedNinePatch; if (ButtonState == ButtonState.Hover && Root.MouseMode == true) { ninePatch = _hoverNinePatch; } if (this.isSelected == true && Root.MouseMode == false) { ninePatch = _hoverNinePatch; } if (ButtonState == ButtonState.Pressed || ForceShowAsPressed) { ninePatch = _pressedNinePatch; } spriteBatch.Draw(ninePatch, new Rectangle((int)TopLeft.X, (int)TopLeft.Y, (int)Width, (int)Height), TintColor); SubPanel.Render(spriteBatch, fieldFontRenderer); } }
public Button(NinePatchRegion2D releasedTexture, NinePatchRegion2D hoverTexture, NinePatchRegion2D pressedTexture, Origin origin, float percentX, float pOffsetX, float percentY, float pOffsetY, float percentWidth, float pOffsetWidth, float percentHeight, float pOffsetHeight) : base(origin, percentX, pOffsetX, percentY, pOffsetY, percentWidth, pOffsetWidth, percentHeight, pOffsetHeight) { _releasedTexture = releasedTexture; _hoverTexture = hoverTexture; _pressedTexture = pressedTexture; _bounds = new Vector2(releasedTexture.Width, releasedTexture.Height); SubPanel = new Panel(Origin.TopLeft, 0, 0, 0, 0, 1, 0, 1, (float)0) { Parent = this }; }
public override void LoadContent() { _mainFont = Content.Load <BitmapFont>(Constants.Resources.FONT_MENU_BUTTON); _buttonReleased = new NinePatchRegion2D(new TextureRegion2D(Content.Load <Texture2D>(Constants.Resources.TEXTURE_BUTTON_RELEASED)), 4, 4, 4, 4); _buttonHover = new NinePatchRegion2D(new TextureRegion2D(Content.Load <Texture2D>(Constants.Resources.TEXTURE_BUTTON_HOVER)), 4, 4, 4, 4); _buttonPressed = new NinePatchRegion2D(new TextureRegion2D(Content.Load <Texture2D>(Constants.Resources.TEXTURE_BUTTON_PRESSED)), 4, 4, 4, 4); ReloadKeyIcons(); }
public override void LoadContent() { Content.Load <Texture2D>(Constants.Resources.TEXTURE_LOGO); Content.Load <Texture2D>(Constants.Resources.TEXTURE_CREDITS_AND_VERSION); Content.Load <BitmapFont>(Constants.Resources.FONT_MENU_BUTTON); _buttonReleased = new NinePatchRegion2D(new TextureRegion2D(Content.Load <Texture2D>(Constants.Resources.TEXTURE_BUTTON_RELEASED)), 4, 4, 4, 4); _buttonHover = new NinePatchRegion2D(new TextureRegion2D(Content.Load <Texture2D>(Constants.Resources.TEXTURE_BUTTON_HOVER)), 4, 4, 4, 4); _buttonPressed = new NinePatchRegion2D(new TextureRegion2D(Content.Load <Texture2D>(Constants.Resources.TEXTURE_BUTTON_PRESSED)), 4, 4, 4, 4); }
public NinePatchImage(NinePatchRegion2D ninePatch, HorizontalAlignment hAlign, AbstractValue horizontal, VerticalAlignment vAlign, AbstractValue vertical, AbstractValue width, AbstractValue height) : base(hAlign, horizontal, vAlign, vertical, width, height) { NinePatch = ninePatch; }
public void DesiredSizeShouldBeTheSizeOfTheMarginsInANinePatchRegion() { var availableSize = new Size2(800, 480); var context = Substitute.For <IGuiContext>(); var texture = new Texture2D(new TestGraphicsDevice(), 512, 512); var backgroundRegion = new NinePatchRegion2D(new TextureRegion2D(texture), new Thickness(10, 20)); var button = new GuiButton() { BackgroundRegion = backgroundRegion }; var desiredSize = button.GetDesiredSize(context, availableSize); Assert.That(desiredSize, Is.EqualTo(new Size2(20, 40))); }
public NinePatchImage(NinePatchRegion2D ninePatch, Origin origin, float percentX, float pOffsetX, float percentY, float pOffsetY, float percentWidth, float pOffsetWidth, float percentHeight, float pOffsetHeight) : base(origin, percentX, pOffsetX, percentY, pOffsetY, percentWidth, pOffsetWidth, percentHeight, pOffsetHeight) { _ninePatch = ninePatch; }
public NinePatchImage(NinePatchRegion2D ninePatch, Origin origin, float percentX, float pOffsetX, float percentY, float pOffsetY, float percentAspect, float pOffsetAspect, float aspectRatio, AspectRatioType aspectRatioType) : base(origin, percentX, pOffsetX, percentY, pOffsetY, percentAspect, pOffsetAspect, aspectRatio, aspectRatioType) { _ninePatch = ninePatch; }
public override void Draw(SpriteBatch spriteBatch) { if (!Hidden) { NinePatchRegion2D ninePatch = _releasedTexture; if (ButtonState == ButtonState.Hover) { ninePatch = _hoverTexture; } if (ButtonState == ButtonState.Pressed) { ninePatch = _pressedTexture; } spriteBatch.Draw(ninePatch, new Rectangle((int)TopLeft.X, (int)TopLeft.Y, (int)Width, (int)Height), Color.White); SubPanel.Draw(spriteBatch); } }
public Slider(NinePatchRegion2D releasedNinePatch, NinePatchRegion2D hoverNinePatch, NinePatchRegion2D pressedNinePatch, HorizontalAlignment hAlign, AbstractValue horizontal, VerticalAlignment vAlign, AbstractValue vertical, AbstractValue width, AbstractValue height, bool isVertical, bool isHorizontal, int divisions, string cvar) : base(hAlign, horizontal, vAlign, vertical, width, height) { _releasedNinePatch = releasedNinePatch; _hoverNinePatch = hoverNinePatch; _pressedNinePatch = pressedNinePatch; this.isVertical = isVertical; this.isHorizontal = isHorizontal; this.divisions = divisions; this.cvar = cvar; SliderButton = new Button(_releasedNinePatch, _hoverNinePatch, _pressedNinePatch, HorizontalAlignment.Center, new FixedValue(0), // TODO: Make dependent on isHorizontal VerticalAlignment.Center, new FixedValue(0), // TODO: Make dependent on isVertical new RelativeValue(0.2f, () => { return(Width); }), new RelativeValue(0.3f, () => { return(Height); })); SliderButton.Parent = this; }
public Button(NinePatchRegion2D releasedNinePatch, NinePatchRegion2D hoverNinePatch, NinePatchRegion2D pressedNinePatch, HorizontalAlignment hAlign, AbstractValue horizontal, VerticalAlignment vAlign, AbstractValue vertical, AbstractValue width, AbstractValue height) : base(hAlign, horizontal, vAlign, vertical, width, height) { _releasedNinePatch = releasedNinePatch; _hoverNinePatch = hoverNinePatch; _pressedNinePatch = pressedNinePatch; SubPanel = new Panel(HorizontalAlignment.Center, new FixedValue(0), VerticalAlignment.Center, new FixedValue(0), new RelativeValue(1, () => { return(Width); }), new RelativeValue(1, () => { return(Height); })); SubPanel.Parent = this; }