mirror of
https://github.com/goatcorp/Dalamud.git
synced 2026-01-03 14:23:40 +01:00
Add third repo number and use it in the installer
This commit is contained in:
parent
5f9191ff20
commit
348b8a5e3a
4 changed files with 30 additions and 11 deletions
|
|
@ -197,12 +197,16 @@ namespace Dalamud.Interface
|
|||
|
||||
ImGui.Dummy(new Vector2(5f, 5f) * ImGui.GetIO().FontGlobalScale);
|
||||
|
||||
ImGui.Columns(3);
|
||||
ImGui.SetColumnWidth(0, ImGui.GetWindowWidth() - (16 + 14) - (45 + 26) * ImGui.GetIO().FontGlobalScale);
|
||||
ImGui.SetColumnWidth(1, 16 + (45 * ImGui.GetIO().FontGlobalScale));
|
||||
ImGui.Columns(4);
|
||||
ImGui.SetColumnWidth(0, 18 + 5 * ImGui.GetIO().FontGlobalScale);
|
||||
ImGui.SetColumnWidth(1, ImGui.GetWindowWidth() - (18 + 16 + 14) - (5 + 45 + 26) * ImGui.GetIO().FontGlobalScale);
|
||||
ImGui.SetColumnWidth(2, 16 + (45 * ImGui.GetIO().FontGlobalScale));
|
||||
ImGui.SetColumnWidth(3, 14 + (26 * ImGui.GetIO().FontGlobalScale));
|
||||
|
||||
ImGui.Separator();
|
||||
|
||||
ImGui.Text("#");
|
||||
ImGui.NextColumn();
|
||||
ImGui.Text("URL");
|
||||
ImGui.NextColumn();
|
||||
ImGui.Text("Enabled");
|
||||
|
|
@ -212,6 +216,8 @@ namespace Dalamud.Interface
|
|||
|
||||
ImGui.Separator();
|
||||
|
||||
ImGui.Text("0");
|
||||
ImGui.NextColumn();
|
||||
ImGui.Text("XIVLauncher");
|
||||
ImGui.NextColumn();
|
||||
ImGui.NextColumn();
|
||||
|
|
@ -220,16 +226,23 @@ namespace Dalamud.Interface
|
|||
|
||||
ThirdRepoSetting toRemove = null;
|
||||
|
||||
var repoNumber = 1;
|
||||
foreach (var thirdRepoSetting in this.thirdRepoList) {
|
||||
var isEnabled = thirdRepoSetting.IsEnabled;
|
||||
|
||||
ImGui.PushID($"thirdRepo_{thirdRepoSetting.Url}");
|
||||
|
||||
ImGui.SetCursorPosX(ImGui.GetCursorPosX() + (ImGui.GetColumnWidth() / 2) - 8 - (ImGui.CalcTextSize(repoNumber.ToString()).X / 2));
|
||||
ImGui.Text(repoNumber.ToString());
|
||||
ImGui.NextColumn();
|
||||
|
||||
ImGui.TextWrapped(thirdRepoSetting.Url);
|
||||
ImGui.NextColumn();
|
||||
ImGui.SetCursorPosX(ImGui.GetCursorPosX() + (ImGui.GetColumnWidth() / 2) - (12 * ImGui.GetIO().FontGlobalScale) - 7);
|
||||
|
||||
ImGui.SetCursorPosX(ImGui.GetCursorPosX() + (ImGui.GetColumnWidth() / 2) - 7 - 12 * ImGui.GetIO().FontGlobalScale);
|
||||
ImGui.Checkbox("##thirdRepoCheck", ref isEnabled);
|
||||
ImGui.NextColumn();
|
||||
|
||||
ImGui.PushFont(InterfaceManager.IconFont);
|
||||
if (ImGui.Button(FontAwesomeIcon.Trash.ToIconString())) {
|
||||
toRemove = thirdRepoSetting;
|
||||
|
|
@ -239,12 +252,17 @@ namespace Dalamud.Interface
|
|||
ImGui.Separator();
|
||||
|
||||
thirdRepoSetting.IsEnabled = isEnabled;
|
||||
|
||||
repoNumber++;
|
||||
}
|
||||
|
||||
if (toRemove != null) {
|
||||
this.thirdRepoList.Remove(toRemove);
|
||||
}
|
||||
|
||||
ImGui.SetCursorPosX(ImGui.GetCursorPosX() + (ImGui.GetColumnWidth() / 2) - 8 - (ImGui.CalcTextSize(repoNumber.ToString()).X / 2));
|
||||
ImGui.Text(repoNumber.ToString());
|
||||
ImGui.NextColumn();
|
||||
ImGui.SetNextItemWidth(-1);
|
||||
ImGui.InputText("##thirdRepoUrlInput", ref this.thirdRepoTempUrl, 300);
|
||||
ImGui.NextColumn();
|
||||
|
|
|
|||
|
|
@ -79,9 +79,9 @@ namespace Dalamud.Plugin
|
|||
public long LastUpdate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Domain of the origin repo
|
||||
/// Number of the repo.
|
||||
/// </summary>
|
||||
public string FromRepo { get; set; }
|
||||
public int RepoNumber { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Download link used to install the plugin.
|
||||
|
|
|
|||
|
|
@ -365,9 +365,8 @@ namespace Dalamud.Plugin
|
|||
info += pluginDefinition.DownloadCount != 0
|
||||
? $", {pluginDefinition.DownloadCount} downloads"
|
||||
: ", download count unavailable";
|
||||
if (pluginDefinition.FromRepo != "goatcorp.github.io" &&
|
||||
!string.IsNullOrWhiteSpace(pluginDefinition.FromRepo))
|
||||
info += $", from {pluginDefinition.FromRepo}";
|
||||
if (pluginDefinition.RepoNumber != 0)
|
||||
info += $", from custom plugin repository #{pluginDefinition.RepoNumber}";
|
||||
ImGui.TextColored(new Vector4(0.5f, 0.5f, 0.5f, 1.0f), info);
|
||||
|
||||
if (!string.IsNullOrWhiteSpace(pluginDefinition.Description))
|
||||
|
|
|
|||
|
|
@ -51,19 +51,21 @@ namespace Dalamud.Plugin
|
|||
try {
|
||||
using var client = new WebClient();
|
||||
|
||||
var repoNumber = 0;
|
||||
foreach (var repo in repos) {
|
||||
Log.Information("[PLUGINR] Fetching repo: {0}", repo);
|
||||
|
||||
var data = client.DownloadString(repo);
|
||||
|
||||
var unsortedPluginMaster = JsonConvert.DeserializeObject<List<PluginDefinition>>(data);
|
||||
var host = new Uri(repo).Host;
|
||||
|
||||
foreach (var pluginDefinition in unsortedPluginMaster) {
|
||||
pluginDefinition.FromRepo = host;
|
||||
pluginDefinition.RepoNumber = repoNumber;
|
||||
}
|
||||
|
||||
allPlugins.AddRange(unsortedPluginMaster);
|
||||
|
||||
repoNumber++;
|
||||
}
|
||||
|
||||
this.PluginMaster = allPlugins.AsReadOnly();
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue