VRCMelonAssistant/ModAssistant/App.xaml.cs

88 lines
2.9 KiB
C#
Raw Normal View History

2019-04-22 18:41:43 +12:00
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Reflection;
2019-04-22 18:41:43 +12:00
using System.Threading.Tasks;
using System.Windows;
using ModAssistant;
namespace ModAssistant
{
/// <summary>
/// Interaction logic for App.xaml
/// </summary>
public partial class App : Application
{
public static string BeatSaberInstallDirectory;
public static string BeatSaberInstallType;
public static bool SaveModSelection;
public static bool CheckInstalledMods;
public static bool SelectInstalledMods;
public static string Version = Assembly.GetExecutingAssembly().GetName().Version.ToString();
2019-04-22 18:41:43 +12:00
public static List<string> SavedMods = ModAssistant.Properties.Settings.Default.SavedMods.Split(',').ToList();
private void Application_Startup(object sender, StartupEventArgs e)
{
Version = Version.Substring(0, Version.Length - 2);
2019-04-22 18:41:43 +12:00
BeatSaberInstallDirectory = Utils.GetInstallDir();
BeatSaberInstallType = ModAssistant.Properties.Settings.Default.StoreType;
SaveModSelection = ModAssistant.Properties.Settings.Default.SaveSelected;
CheckInstalledMods = ModAssistant.Properties.Settings.Default.CheckInstalled;
SelectInstalledMods = ModAssistant.Properties.Settings.Default.SelectInstalled;
2019-04-22 18:41:43 +12:00
if (e.Args.Length == 0)
{
Updater.Run();
2019-04-22 18:41:43 +12:00
MainWindow window = new MainWindow();
window.Show();
}
else
{
ArgumentHandler(e.Args);
}
}
private void ArgumentHandler(string[] Args)
{
2019-04-30 04:34:41 +12:00
switch (Args[0])
{
case "--install":
if (!String.IsNullOrEmpty(Args[1]))
OneClickInstaller.InstallAsset(Args[1]);
else
Utils.SendNotify("Invalid argument! '--install' requires an option.");
break;
case "--no-update":
MainWindow window = new MainWindow();
window.Show();
2019-04-30 04:34:41 +12:00
break;
2019-05-05 04:08:54 +12:00
case "--register":
OneClickInstaller.Register();
break;
2019-04-30 04:34:41 +12:00
default:
Utils.SendNotify("Unrecognized argument. Closing Mod Assistant.");
break;
}
Current.Shutdown();
2019-04-22 18:41:43 +12:00
}
private void Application_DispatcherUnhandledException(object sender, System.Windows.Threading.DispatcherUnhandledExceptionEventArgs e)
{
MessageBox.Show("An unhandled exception just occurred: " + e.Exception.Message, "Exception", MessageBoxButton.OK, MessageBoxImage.Warning);
e.Handled = true;
}
public void RegisterOneClickInstalls ()
{
}
}
}