private void SelectNavItem(int item)
        {
            if (item == 0)
            {
                CurrentPage = 0;
                Nav_Button_Overview.Background = Shrek2Colors.GetBrushFromHex(Shrek2Colors.NavColor_Selected);
                Nav_Button_Mods.Background     = Shrek2Colors.GetBrushFromHex(Shrek2Colors.NavColor_Normal);

                Content_Panel_Overview.Visibility = Visibility.Visible;
                Content_Panel_Mods.Visibility     = Visibility.Collapsed;

                Mods = Mod.GetMods();
                OverviewModsList.ItemsSource = Mod.VisualMod.ToVisualMods(Mods.Take(4).ToList());
            }
            else if (item == 1)
            {
                Mods_Search_Sorting.SelectedIndex = 0;
                Mods_Search_Text.Text             = "";
                CurrentPage = 1;
                Nav_Button_Overview.Background = Shrek2Colors.GetBrushFromHex(Shrek2Colors.NavColor_Normal);
                Nav_Button_Mods.Background     = Shrek2Colors.GetBrushFromHex(Shrek2Colors.NavColor_Selected);

                Content_Panel_Overview.Visibility = Visibility.Collapsed;
                Content_Panel_Mods.Visibility     = Visibility.Visible;

                Mods = Mod.GetMods();
                AllModsList.ItemsSource = Mod.VisualMod.ToVisualMods(Mods);
            }
        }
        /* MANAGE MODS */

        private void ManageModsSelectSetting(int type)
        {
            ManageMods_CurrentSettingType = type;
            if (ManageMods_CurrentSettingType == 0)
            {
                // Settings
                ModSettingsTitle.Text = "Mod Settings";
                ModSettings_SettingsButton.Background = Shrek2Colors.GetBrushFromHex("#65a338");
                ModSettings_BindsButton.Background    = Shrek2Colors.GetBrushFromHex("#b7cba8");

                if (SelectedMod != null)
                {
                    DefaultText.Visibility         = Visibility.Collapsed;
                    SelectedModName.Text           = SelectedMod.Name;
                    SelectedModInfo.Visibility     = Visibility.Visible;
                    SelectedModNoConfig.Visibility = Visibility.Collapsed;

                    var configable = SH2WorkshopFileHandler.IsModConfigable(SelectedMod.ModGUID);
                    if (configable)
                    {
                        AddConfigFields();
                        ConfigFields.Visibility = Visibility.Visible;
                    }
                    else
                    {
                        SelectedModNoConfig.Visibility = Visibility.Visible;
                        ConfigFields.Visibility        = Visibility.Collapsed;
                    }
                }
            }
            else if (ManageMods_CurrentSettingType == 1)
            {
                // Binds
                ModSettingsTitle.Text = "Mod Binds";
                ModSettings_SettingsButton.Background = Shrek2Colors.GetBrushFromHex("#b7cba8");
                ModSettings_BindsButton.Background    = Shrek2Colors.GetBrushFromHex("#65a338");

                if (SelectedMod != null)
                {
                    DefaultText.Visibility         = Visibility.Collapsed;
                    SelectedModName.Text           = SelectedMod.Name;
                    SelectedModInfo.Visibility     = Visibility.Visible;
                    SelectedModNoConfig.Visibility = Visibility.Collapsed;

                    var bindable = SH2WorkshopFileHandler.IsModBindable(SelectedMod.ModGUID);
                    if (bindable)
                    {
                        AddBindFields();
                        ConfigFields.Visibility = Visibility.Visible;
                    }
                    else
                    {
                        SelectedModNoConfig.Visibility = Visibility.Visible;
                        ConfigFields.Visibility        = Visibility.Collapsed;
                    }
                }
            }
        }
        private void ModItem_MouseLeave(object sender, MouseEventArgs e)
        {
            MaterialDesignThemes.Wpf.Card card = (MaterialDesignThemes.Wpf.Card)sender;
            var ModItem_Panel = FindElementByName <StackPanel>(card, "ModItem_Panel");

            //var ModItem_Name = FindElementByName<TextBlock>(card, "ModItem_Name");
            //var ModItem_Author = FindElementByName<TextBlock>(card, "ModItem_Author");
            //var ModItem_AuthorTick = FindElementByName<Image>(card, "ModItem_AuthorTick");
            //var ModItem_Desc = FindElementByName<TextBlock>(card, "ModItem_Desc");

            ModItem_Panel.Background = Shrek2Colors.GetBrushFromHex(Shrek2Colors.Color_White);
            //ModItem_Name.Foreground = Shrek2Colors.GetBrushFromHex(Shrek2Colors.Color_Black);
            //ModItem_Author.Foreground = Shrek2Colors.GetBrushFromHex(Shrek2Colors.Color_Green);
            //ModItem_AuthorTick.Source = new BitmapImage(new Uri(@"Resources/embed_tick.png", UriKind.Relative));
            //ModItem_Desc.Foreground = Shrek2Colors.GetBrushFromHex(Shrek2Colors.Color_Black);
        }
        private async void Overview_Button_ManageMods_MouseUp(object sender, MouseButtonEventArgs e)
        {
            UnsavedChangesDialogOpened = false;
            LoadedConfig      = null;
            SelectedMod       = null;
            ErrorMessage.Text = "";
            SelectedModNoConfig.Visibility = Visibility.Collapsed;
            ManageMods_CurrentSettingType  = -1;

            DefaultText.Visibility     = Visibility.Visible;
            SelectedModName.Text       = "";
            SelectedModInfo.Visibility = Visibility.Collapsed;

            ConfigFields_Items.Children.Clear();

            InstalledMods = Mod.GetInstalledMods(Mods);

            InstalledModsList.Items.Clear();
            foreach (var mod in InstalledMods)
            {
                InstalledModsList.Items.Add(new ListViewItem()
                {
                    Content         = mod.Name,
                    BorderThickness = new Thickness(0, 0, 0, 1),
                    BorderBrush     = Shrek2Colors.GetBrushFromHex(Shrek2Colors.Color_White),
                    Name            = mod.ModGUID.Replace("-", "")
                });
            }

            await ManageModsDialog.ShowDialog(null);


            //if (ManageModsWindow != null)
            //{
            //    ManageModsWindow.Focus();
            //    return;
            //}

            //ManageModsWindow = new ManageModsWindow(Mods);
            //ManageModsWindow.Closed += (a, b) =>
            //{
            //    ManageModsWindow = null;
            //};
            //ManageModsWindow.Show();
        }
        private void Window_Loaded(object sender, RoutedEventArgs rea)
        {
            LoadedConfig      = null;
            SelectedMod       = null;
            ErrorMessage.Text = "";
            SelectedModNoConfig.Visibility = Visibility.Collapsed;

            InstalledMods = Mod.GetInstalledMods(Mods);

            foreach (var mod in InstalledMods)
            {
                InstalledModsList.Items.Add(new ListViewItem()
                {
                    Content         = mod.Name,
                    BorderThickness = new Thickness(0, 0, 0, 1),
                    BorderBrush     = Shrek2Colors.GetBrushFromHex(Shrek2Colors.Color_White),
                    Name            = mod.ModGUID.Replace("-", "")
                });
            }
        }