public void Draw(RenderTarget target, RenderStates states) { UpdateOpenness(); if (IsOpen) { _reportBackground.Position = new Vector2f(0, _closedYPos * (_currentOpenness - 1)); var bounds = _reportBackground.GetGlobalBounds(); _inputBackground.Position = new Vector2f(0, (int)(bounds.Top + bounds.Height)); _reportBackground.Draw(target, states); _reportText.Draw(target, states); _inputBackground.Draw(target, states); _inputText.Draw(target, states); _completer.Draw(target, states); } }