mirror of
https://github.com/goatcorp/Dalamud.git
synced 2025-12-12 18:27:23 +01:00
feat: implement IsTestingExclusive
This commit is contained in:
parent
3bd53590f1
commit
74ea78cab1
3 changed files with 15 additions and 4 deletions
|
|
@ -33,6 +33,11 @@ namespace Dalamud.Plugin
|
|||
/// </summary>
|
||||
public string TestingAssemblyVersion { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Defines if the plugin is only available for testing.
|
||||
/// </summary>
|
||||
public bool IsTestingExclusive { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// A description of the plugins functions.
|
||||
/// </summary>
|
||||
|
|
|
|||
|
|
@ -100,8 +100,6 @@ namespace Dalamud.Plugin
|
|||
|
||||
didAnyWithSearch = true;
|
||||
|
||||
ImGui.PushID(pluginDefinition.InternalName + pluginDefinition.AssemblyVersion);
|
||||
|
||||
var isInstalled = this.dalamud.PluginManager.Plugins.Where(x => x.Definition != null).Any(
|
||||
x => x.Definition.InternalName == pluginDefinition.InternalName);
|
||||
|
||||
|
|
@ -120,8 +118,16 @@ namespace Dalamud.Plugin
|
|||
if (Version.TryParse(pluginDefinition.AssemblyVersion, out var assemblyVersion) && Version.TryParse(pluginDefinition.TestingAssemblyVersion, out var testingAssemblyVersion))
|
||||
isTestingAvailable = this.dalamud.Configuration.DoPluginTest && testingAssemblyVersion > assemblyVersion;
|
||||
|
||||
if (this.dalamud.Configuration.DoPluginTest && pluginDefinition.IsTestingExclusive) {
|
||||
isTestingAvailable = true;
|
||||
} else {
|
||||
continue;
|
||||
}
|
||||
|
||||
label += isTestingAvailable ? " (Testing version)" : string.Empty;
|
||||
|
||||
ImGui.PushID(pluginDefinition.InternalName + pluginDefinition.AssemblyVersion);
|
||||
|
||||
if (ImGui.CollapsingHeader(pluginDefinition.Name + label + "###Header" + pluginDefinition.InternalName)) {
|
||||
ImGui.Indent();
|
||||
|
||||
|
|
|
|||
|
|
@ -97,10 +97,10 @@ namespace Dalamud.Plugin
|
|||
|
||||
using var client = new WebClient();
|
||||
|
||||
var doTestingDownload = fromTesting && Version.Parse(definition.TestingAssemblyVersion) > Version.Parse(definition.AssemblyVersion);
|
||||
var doTestingDownload = fromTesting && Version.Parse(definition.TestingAssemblyVersion) > Version.Parse(definition.AssemblyVersion) || fromTesting && definition.IsTestingExclusive;
|
||||
var url = string.Format(PluginFunctionBaseUrl, definition.InternalName, isUpdate, doTestingDownload);
|
||||
|
||||
Log.Information("Downloading plugin to {0} from {1} doTestingDownload: {2}", path, url, doTestingDownload);
|
||||
Log.Information("Downloading plugin to {0} from {1} doTestingDownload: {2} isTestingExclusive:", path, url, doTestingDownload, definition.IsTestingExclusive);
|
||||
|
||||
client.DownloadFile(url, path);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue