Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using MakeMyProject.Models;
- using MakeMyProject.Services;
- using System.Diagnostics;
- namespace MakeMyProject;
- public class Program
- {
- private static JsonEngine _jsEngine = new();
- private static Helpers _hp = new();
- public static void Main(string[] args)
- {
- CheckSetup();
- }
- public static void CheckSetup()
- {
- SetupModel setup = _jsEngine.GetSetupValues();
- _jsEngine.CreateSetupFolder();
- Console.WriteLine("\u001b[2J\u001b[3J");
- if (setup.FirstLaunch)
- {
- ShowWelcomeScreen();
- _jsEngine.UpdateFirstLaunch();
- Console.WriteLine("\u001b[2J\u001b[3J");
- };
- ShowMainMenu();
- }
- public static void ShowWelcomeScreen()
- {
- Console.WriteLine("\u001b[2J\u001b[3J");
- // _hp.PrintAppEmblem();
- _hp.PrintWelcomeText();
- string user_choice = ColorCon.GetStringFromConsole(
- prompt: "Do You Agree To These Terms?\n\nA - Accept\nD - Decline\n\nYour Choice: ",
- color: ConsoleColor.DarkGray,
- validator: x => !string.IsNullOrEmpty(x) &&
- !string.IsNullOrWhiteSpace(x) &&
- x.ToLower().Equals("a") || x.ToLower().Equals("d"),
- errorMessage: "Input Must Be A to Accept or D to Decline",
- errorColor: ConsoleColor.Red);
- switch (user_choice.ToLower())
- {
- case "a":
- _jsEngine.UpdateSetup();
- ShowMainMenu();
- break;
- case "d":
- Console.WriteLine("\u001b[2J\u001b[3J");
- string new_user_choice = ColorCon.GetStringFromConsole(
- prompt: "Are You Sure You Wish To Decline The Terms Of Service? Yes or No\n\nYour Choice: ",
- color: ConsoleColor.Yellow,
- validator: x => !string.IsNullOrEmpty(x)&&
- !string.IsNullOrWhiteSpace(x) &&
- x.ToLower().Equals("y") || x.ToLower().Equals("n"),
- errorMessage: "Input Must Be Y for Yes or N for No",
- errorColor: ConsoleColor.Red);
- if (new_user_choice.ToLower() == "y")
- {
- Console.WriteLine("\u001b[2J\u001b[3J");
- ColorCon.WriteLine("You Chose To Decline The Terms Of Service.", ConsoleColor.Cyan);
- ColorCon.WriteLine("Exiting Application In 3 Seconds. . .", ConsoleColor.Cyan);
- Thread.Sleep(3000);
- Environment.Exit(0);
- }
- else if (new_user_choice.ToLower() == "n")
- {
- ShowWelcomeScreen();
- }
- break;
- default:
- ColorCon.WriteLine("Unable To Determine User Input. Relaunching Program", ConsoleColor.Yellow);
- Process restart = new();
- restart.StartInfo.FileName = "MakeMyProject.exe";
- restart.Start();
- Environment.Exit(0);
- break;
- }
- }
- public static void ShowMainMenu()
- {
- string menuText = """
- What Would You Like To Do?
- 1 - Create New Python Project
- 2 - Create New C# Project
- 3 - Create New JavaScript Project
- """;
- string userChoice = ColorCon.GetStringFromConsole(
- prompt: "\n\nYour Choice: ",
- color: ConsoleColor.DarkGray,
- validator: x => _hp.ValidateMenuChoice(x),
- errorMessage: "Input Must Be A Whole Number Shown On The Menu",
- errorColor: ConsoleColor.Red);
- switch (Convert.ToInt32(userChoice))
- {
- case 1:
- break;
- case 2:
- break;
- case 3:
- break;
- case 4:
- break;
- default:
- ColorCon.WriteLine("Unable To Determine User Input", ConsoleColor.Red);
- break;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment