mirror of
https://github.com/goatcorp/Dalamud.git
synced 2026-02-24 13:41:49 +01:00
Merge f28d40f6ae into bef50438f5
This commit is contained in:
commit
9992d940a1
2 changed files with 58 additions and 1 deletions
|
|
@ -31,6 +31,9 @@ internal class PluginCategoryManager
|
|||
new(CategoryKind.PluginChangelogs, "special.plugins", () => Locs.Category_Plugins),
|
||||
new(CategoryKind.PluginProfiles, "special.profiles", () => Locs.Category_PluginProfiles),
|
||||
new(CategoryKind.UpdateablePlugins, "special.updateable", () => Locs.Category_UpdateablePlugins),
|
||||
new(CategoryKind.EnabledPlugins, "special.enabled", () => Locs.Category_EnabledPlugins),
|
||||
new(CategoryKind.DisabledPlugins, "special.disabled", () => Locs.Category_DisabledPlugins),
|
||||
new(CategoryKind.IncompatiblePlugins, "special.incompatible", () => Locs.Category_IncompatiblePlugins),
|
||||
|
||||
// Tag-driven categories
|
||||
new(CategoryKind.Other, "other", () => Locs.Category_Other),
|
||||
|
|
@ -48,7 +51,7 @@ internal class PluginCategoryManager
|
|||
private GroupInfo[] groupList =
|
||||
[
|
||||
new(GroupKind.DevTools, () => Locs.Group_DevTools, CategoryKind.DevInstalled, CategoryKind.IconTester),
|
||||
new(GroupKind.Installed, () => Locs.Group_Installed, CategoryKind.All, CategoryKind.IsTesting, CategoryKind.UpdateablePlugins, CategoryKind.PluginProfiles),
|
||||
new(GroupKind.Installed, () => Locs.Group_Installed, CategoryKind.All, CategoryKind.IsTesting, CategoryKind.UpdateablePlugins, CategoryKind.EnabledPlugins, CategoryKind.DisabledPlugins, CategoryKind.IncompatiblePlugins, CategoryKind.PluginProfiles),
|
||||
new(GroupKind.Available, () => Locs.Group_Available, CategoryKind.All),
|
||||
new(GroupKind.Changelog, () => Locs.Group_Changelog, CategoryKind.All, CategoryKind.DalamudChangelogs, CategoryKind.PluginChangelogs)
|
||||
|
||||
|
|
@ -143,6 +146,21 @@ internal class PluginCategoryManager
|
|||
/// </summary>
|
||||
UpdateablePlugins = 15,
|
||||
|
||||
/// <summary>
|
||||
/// Enabled plugins.
|
||||
/// </summary>
|
||||
EnabledPlugins = 16,
|
||||
|
||||
/// <summary>
|
||||
/// Disabled plugins.
|
||||
/// </summary>
|
||||
DisabledPlugins = 17,
|
||||
|
||||
/// <summary>
|
||||
/// Incompatible plugins.
|
||||
/// </summary>
|
||||
IncompatiblePlugins = 18,
|
||||
|
||||
/// <summary>
|
||||
/// Plugins tagged as "other".
|
||||
/// </summary>
|
||||
|
|
@ -555,6 +573,12 @@ internal class PluginCategoryManager
|
|||
public static string Category_PluginProfiles => Loc.Localize("InstallerCategoryPluginProfiles", "Plugin Collections");
|
||||
|
||||
public static string Category_UpdateablePlugins => Loc.Localize("InstallerCategoryCanBeUpdated", "Can be updated");
|
||||
|
||||
public static string Category_EnabledPlugins => Loc.Localize("InstallerCategoryEnabledPlugins", "Enabled");
|
||||
|
||||
public static string Category_DisabledPlugins => Loc.Localize("InstallerCategoryDisabledPlugins", "Disabled");
|
||||
|
||||
public static string Category_IncompatiblePlugins => Loc.Localize("InstallerCategoryIncompatiblePlugins", "Incompatible");
|
||||
|
||||
public static string Category_Other => Loc.Localize("InstallerCategoryOther", "Other");
|
||||
|
||||
|
|
|
|||
|
|
@ -236,6 +236,9 @@ internal class PluginInstallerWindow : Window, IDisposable
|
|||
Testing,
|
||||
Updateable,
|
||||
Dev,
|
||||
Enabled,
|
||||
Disabled,
|
||||
Incompatible,
|
||||
}
|
||||
|
||||
private bool AnyOperationInProgress => this.installStatus == OperationStatus.InProgress ||
|
||||
|
|
@ -1454,6 +1457,15 @@ internal class PluginInstallerWindow : Window, IDisposable
|
|||
if (filter == InstalledPluginListFilter.Testing && !manager.HasTestingOptIn(plugin.Manifest))
|
||||
continue;
|
||||
|
||||
if (filter == InstalledPluginListFilter.Enabled && (!plugin.IsWantedByAnyProfile || plugin.IsOutdated || plugin.IsBanned || plugin.IsOrphaned || plugin.IsDecommissioned))
|
||||
continue;
|
||||
|
||||
if (filter == InstalledPluginListFilter.Disabled && (plugin.IsWantedByAnyProfile || plugin.IsOutdated || plugin.IsBanned || plugin.IsOrphaned || plugin.IsDecommissioned))
|
||||
continue;
|
||||
|
||||
if (filter == InstalledPluginListFilter.Incompatible && !(plugin.IsOutdated || plugin.IsBanned || plugin.IsOrphaned || plugin.IsDecommissioned))
|
||||
continue;
|
||||
|
||||
// Find applicable update and manifest, if we have them
|
||||
AvailablePluginUpdate? update = null;
|
||||
RemotePluginManifest? remoteManifest = null;
|
||||
|
|
@ -1486,6 +1498,9 @@ internal class PluginInstallerWindow : Window, IDisposable
|
|||
InstalledPluginListFilter.Testing => Locs.TabBody_NoPluginsTesting,
|
||||
InstalledPluginListFilter.Updateable => Locs.TabBody_NoPluginsUpdateable,
|
||||
InstalledPluginListFilter.Dev => Locs.TabBody_NoPluginsDev,
|
||||
InstalledPluginListFilter.Enabled => Locs.TabBody_NoPluginsEnabled,
|
||||
InstalledPluginListFilter.Disabled => Locs.TabBody_NoPluginsDisabled,
|
||||
InstalledPluginListFilter.Incompatible => Locs.TabBody_NoPluginsIncompatible,
|
||||
_ => throw new ArgumentException(null, nameof(filter)),
|
||||
};
|
||||
|
||||
|
|
@ -1726,6 +1741,18 @@ internal class PluginInstallerWindow : Window, IDisposable
|
|||
this.DrawInstalledPluginList(InstalledPluginListFilter.Updateable);
|
||||
break;
|
||||
|
||||
case PluginCategoryManager.CategoryKind.EnabledPlugins:
|
||||
this.DrawInstalledPluginList(InstalledPluginListFilter.Enabled);
|
||||
break;
|
||||
|
||||
case PluginCategoryManager.CategoryKind.DisabledPlugins:
|
||||
this.DrawInstalledPluginList(InstalledPluginListFilter.Disabled);
|
||||
break;
|
||||
|
||||
case PluginCategoryManager.CategoryKind.IncompatiblePlugins:
|
||||
this.DrawInstalledPluginList(InstalledPluginListFilter.Incompatible);
|
||||
break;
|
||||
|
||||
case PluginCategoryManager.CategoryKind.PluginProfiles:
|
||||
this.profileManagerWidget.Draw();
|
||||
break;
|
||||
|
|
@ -4098,6 +4125,12 @@ internal class PluginInstallerWindow : Window, IDisposable
|
|||
|
||||
public static string TabBody_NoPluginsDev => Loc.Localize("InstallerNoPluginsDev", "You don't have any dev plugins. Add them from the settings.");
|
||||
|
||||
public static string TabBody_NoPluginsEnabled => Loc.Localize("InstallerNoPluginsEnabled", "You don't have any enabled plugins.");
|
||||
|
||||
public static string TabBody_NoPluginsDisabled => Loc.Localize("InstallerNoPluginsDisabled", "You don't have any disabled plugins.");
|
||||
|
||||
public static string TabBody_NoPluginsIncompatible => Loc.Localize("InstallerNoPluginsIncompatible", "You don't have any incompatible plugins.");
|
||||
|
||||
#endregion
|
||||
|
||||
#region Search text
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue