Example #1
0
 private void Remedy(SettingsCheck selected)
 {
     selected.Fix();
     if (!selected.IsError)
     {
         olvDuplicates.RemoveObject(selected);
         set.Remove(selected);
     }
 }
Example #2
0
        private void olvDuplicates_CellRightClick(object sender, CellRightClickEventArgs e)
        {
            if (e.Model is null)
            {
                return;
            }

            possibleMergedEpisodeRightClickMenu.Items.Clear();
            if (olvDuplicates.SelectedObjects.Count == 1)
            {
                SettingsCheck mlastSelected = (SettingsCheck)e.Model;

                if (mlastSelected is MovieCheck mcheck)
                {
                    MovieConfiguration si = mcheck.Movie;
                    AddRcMenuItem("Force Refresh",
                                  (o, args) => mainUi.ForceMovieRefresh(new List <MovieConfiguration> {
                        si
                    }, false));

                    AddRcMenuItem("Edit Movie", (o, args) => mainUi.EditMovie(si));

                    possibleMergedEpisodeRightClickMenu.Items.Add(new ToolStripSeparator());
                    foreach (string?f in si.Locations)
                    {
                        AddRcMenuItem("Visit " + f, (o, args) => Helpers.OpenFolder(f));
                    }
                }
                else if (mlastSelected is TvShowCheck tcheck)
                {
                    ShowConfiguration si = tcheck.Show;
                    AddRcMenuItem("Force Refresh",
                                  (o, args) => mainUi.ForceRefresh(new List <ShowConfiguration> {
                        si
                    }, false));

                    AddRcMenuItem("Edit TV Show", (o, args) => mainUi.EditShow(si));
                }

                possibleMergedEpisodeRightClickMenu.Items.Add(new ToolStripSeparator());
                AddRcMenuItem("Fix Issue", (o, args) => Remedy(mlastSelected));
            }
            else
            {
                AddRcMenuItem("Fix Issues", (o, args) =>
                {
                    foreach (SettingsCheck?selected in olvDuplicates.SelectedObjects.OfType <SettingsCheck>())
                    {
                        Remedy(selected);
                    }
                    mDoc.SetDirty();
                });
            }
        }