public MainWindow()
{
//exception occurs in InitializeComponent() without try block, but doesn't if present. wtf
try
{
InitializeComponent();
}
catch (Exception e)
{
MessageBox.Show(e.Message);
SystemCommands.CloseWindow(this);
}
installModspanel.setToolList(Tools.Items.Where(x => x.tags.Contains("user")));
Tools.FavoritesChanged += Tools_FavoritesChanged;
Tools_FavoritesChanged(null, null);
utilitiesPanel.setToolList(Tools.Items.Where(x => x.tags.Contains("utility")));
createModsPanel.setToolList(Tools.Items.Where(x => x.tags.Contains("developer")));
DisableFlyouts = Properties.Settings.Default.DisableToolDescriptions;
disableSetupCheckBox.IsChecked = Properties.Settings.Default.DisableDLCCheckOnStart;
Topmost = Properties.Settings.Default.AlwaysOnTop;
if (!Properties.Settings.Default.DisableDLCCheckOnStart)
{
if (ME3Directory.gamePath == null)
{
(new InitialSetup()).ShowDialog();
}
else if (File.Exists(Path.Combine(ME3Directory.gamePath, "Binaries", "Win32", "MassEffect3.exe")))
{
var folders = Directory.EnumerateDirectories(ME3Directory.DLCPath).Where(x => !x.Contains("__metadata"));
var extracted = folders.Where(folder => Directory.EnumerateFiles(folder, "*", SearchOption.AllDirectories).Any(file => file.EndsWith("pcconsoletoc.bin", StringComparison.OrdinalIgnoreCase)));
var unextracted = folders.Except(extracted);
if (unextracted.Count() > 0)
{
(new InitialSetup()).ShowDialog();
}
}
else
{
(new InitialSetup()).ShowDialog();
}
}
}