using System;
using System.Collections.Generic;
using System.Text;

namespace Vortex {
	/// <summary>
	/// Contains game debug settings
	/// </summary>
	public sealed class GameDebugging {

		internal GameDebugging() {
			ShowFPS = true;
			EnableKeyboardControl = true;
		}

		/// <summary>
		/// Gets or sets a value indicating whether showing FPS is enabled.
		/// </summary>
		/// <value><c>true</c> if showing FPS is enabled; otherwise, <c>false</c>.</value>
		public bool ShowFPS { get; set; }

		/// <summary>
		/// Gets or sets a value indicating whether showing statistics is enabled.
		/// </summary>
		/// <value><c>true</c> if showing statistics is enabled; otherwise, <c>false</c>.</value>
		public bool ShowStatistics { get; set; }

		/// <summary>
		/// Gets or sets a value indicating whether showing overlapped console is enabled.
		/// </summary>
		/// <value><c>true</c> if showing overlapped console is enabled; otherwise, <c>false</c>.</value>
		public bool ShowConsole { get; set; }

		/// <summary>
		/// Gets or sets a value indicating whether keyboard control under debugging modes is enabled.
		/// ShowFPS - F11.
		/// ShowStatistics - F12.
		/// ShowConsole - ` (tilda).
		/// Each of key toggles corresponding mode.
		/// </summary>
		/// <value>
		/// 	<c>true</c> if keyboard control under debug modes is enabled; otherwise, <c>false</c>.
		/// </value>
		public bool EnableKeyboardControl { get; set; }
	}
}
