//////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////// internal override void Render(Renderer renderer, GameTime gameTime) { if (Visible && Shadow) { SkinControl c = Manager.Skin.Controls[skShadow]; SkinLayer l = c.Layers[lrShadow]; Color cl = Color.FromNonPremultiplied(l.States.Enabled.Color.R, l.States.Enabled.Color.G, l.States.Enabled.Color.B, Alpha); renderer.Begin(BlendingMode.Default); renderer.DrawLayer(l, new Rectangle(Left - c.OriginMargins.Left, Top - c.OriginMargins.Top, Width + c.OriginMargins.Horizontal, Height + c.OriginMargins.Vertical), cl, 0); renderer.End(); } base.Render(renderer, gameTime); }
public override void Render(Renderer renderer, GameTime gameTime) { if (_backgroundBuffer == null) UpdateBackground(Width, Height); // if buffer is still empty, something wrong if (_backgroundBuffer == null) return; base.Render(renderer, gameTime); if (Visible) { renderer.Begin(BlendingMode.Default); renderer.Draw(_backgroundBuffer, this.AbsoluteRect, AlphaColor); renderer.End(); } }