UHSampleGame.MenuSystem.MenuScreen.Draw C# (CSharp) Method

Draw() public method

Draws the menu.
public Draw ( GameTime gameTime ) : void
gameTime Microsoft.Xna.Framework.GameTime
return void
        public override void Draw(GameTime gameTime)
        {
            SpriteBatch spriteBatch = ScreenManager.SpriteBatch;
            SpriteFont font = ScreenManager.Game.Content.Load<SpriteFont>("DummyText\\Font");

            spriteBatch.Begin();

            Vector2 position = new Vector2(menuEntryStartPosition.X, menuEntryStartPosition.Y);

            // Draw each menu entry in turn.
            for (int i = 0; i < menuEntries.Count; i++)
            {
                MenuEntry menuEntry = menuEntries[i];

                bool isSelected = IsVisible && (i == selectedEntry);

                menuEntry.Draw(this, position, isSelected);

                position.Y += menuEntry.GetHeight();
            }

            // Draw the menu title.
            Vector2 titlePosition = new Vector2(ScreenManager.GraphicsDeviceManager.GraphicsDevice.Viewport.Width / 2, 50);
            Vector2 titleOrigin = font.MeasureString(menuTitle) / 2;
            Color titleColor = Color.White;
            float titleScale = 1.25f;

            spriteBatch.DrawString(font, menuTitle, titlePosition, titleColor, 0,
                                   titleOrigin, titleScale, SpriteEffects.None, 0);

            spriteBatch.End();
        }