/// <summary> /// Draw visible forms /// </summary> public void Draw() { #region Draw TopMenu //if (menu != null && !menu.IsDisposed && menu.Visible) // menu.Draw(); #endregion #region Draw Forms for (int i = _forms.Count - 1; i > -1; i--) { if (!_forms[i].IsDisposed && _forms[i].Visible && _forms[i] != _topMostForm && _forms[i].State != xWinFormsLib.Form.WindowState.Minimized) { _forms[i].Draw(); } } if (_topMostForm != null && !_topMostForm.IsDisposed && _topMostForm.Visible) { _topMostForm.Draw(); } #endregion #region Draw Minimized Forms for (int i = _forms.Count - 1; i >= 0; i--) { if (_forms[i].State == xWinFormsLib.Form.WindowState.Minimized && !_forms[i].IsDisposed && _forms[i].Visible && _forms[i] != _topMostForm) { _forms[i].Draw(); } } #endregion #region Draw Context Menu if (ContextMenu != null && !ContextMenu.IsDisposed && ContextMenu.Visible && ContextMenu.State != SubMenu.MenuState.Closed) { _spriteBatch.Begin(SpriteSortMode.Texture, null); ContextMenu.Draw(_spriteBatch); _spriteBatch.End(); } #endregion #region Draw Cursor if (_isCursorVisible) { _cursor.Draw(); } #endregion }