ME3Explorer.MainWindow.MainWindow C# (CSharp) Method

MainWindow() public method

public MainWindow ( ) : System
return System
        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();
                }
            }
        }