/// <summary>
        /// Gets an instance of the console factory.
        /// </summary>
        /// <returns></returns>
        public static ConsoleFactory GetFactory()
        {
            if (ConsoleFactory.__instance == null)
            {
                ConsoleFactory.__instance = new ConsoleFactory();
            }

            return(ConsoleFactory.__instance);
        }
        /// <summary>
        /// Creates a new PowerShell Console tab.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void CreateNewPowerShellTab(object sender, RoutedEventArgs e)
        {
            Console newCmdConsole = ConsoleFactory.GetFactory().CreatePowerShellConsole();

            CreateNewTabForConsole(newCmdConsole);
        }
        /// <summary>
        /// Creates a new CygWin Console tab.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void CreateNewCygWinTab(object sender, RoutedEventArgs e)
        {
            Console newCmdConsole = ConsoleFactory.GetFactory().CreateCygWinConsole();

            CreateNewTabForConsole(newCmdConsole);
        }