mirror of
https://github.com/goatcorp/Dalamud.git
synced 2026-02-20 06:47:44 +01:00
Unify body notice drawing logic, clear search when switching groups
This commit is contained in:
parent
34ca8b8f99
commit
5eee678899
1 changed files with 49 additions and 3 deletions
|
|
@ -1262,7 +1262,6 @@ internal class PluginInstallerWindow : Window, IDisposable
|
||||||
|
|
||||||
if (filteredAvailableManifests.Count == 0)
|
if (filteredAvailableManifests.Count == 0)
|
||||||
{
|
{
|
||||||
ImGui.TextColored(ImGuiColors.DalamudGrey2, Locs.TabBody_SearchNoMatching);
|
|
||||||
return proxies;
|
return proxies;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1314,6 +1313,23 @@ internal class PluginInstallerWindow : Window, IDisposable
|
||||||
}
|
}
|
||||||
#pragma warning restore SA1201
|
#pragma warning restore SA1201
|
||||||
|
|
||||||
|
#pragma warning disable SA1204
|
||||||
|
private static void DrawMutedBodyText(string text, float paddingBefore, float paddingAfter)
|
||||||
|
#pragma warning restore SA1204
|
||||||
|
{
|
||||||
|
ImGuiHelpers.ScaledDummy(paddingBefore);
|
||||||
|
|
||||||
|
using (ImRaii.PushColor(ImGuiCol.Text, ImGuiColors.DalamudGrey))
|
||||||
|
{
|
||||||
|
foreach (var line in text.Split('\n'))
|
||||||
|
{
|
||||||
|
ImGuiHelpers.CenteredText(line);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
ImGuiHelpers.ScaledDummy(paddingAfter);
|
||||||
|
}
|
||||||
|
|
||||||
private void DrawAvailablePluginList()
|
private void DrawAvailablePluginList()
|
||||||
{
|
{
|
||||||
var i = 0;
|
var i = 0;
|
||||||
|
|
@ -1344,6 +1360,24 @@ internal class PluginInstallerWindow : Window, IDisposable
|
||||||
{
|
{
|
||||||
this.categoryManager.CurrentCategoryKind = PluginCategoryManager.CategoryKind.All;
|
this.categoryManager.CurrentCategoryKind = PluginCategoryManager.CategoryKind.All;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
using (ImRaii.PushColor(ImGuiCol.Text, ImGuiColors.DalamudGrey))
|
||||||
|
{
|
||||||
|
var hasSearch = !this.searchText.IsNullOrEmpty();
|
||||||
|
|
||||||
|
if (i == 0 && !hasSearch)
|
||||||
|
{
|
||||||
|
DrawMutedBodyText(Locs.TabBody_NoPluginsAvailable, 60, 20);
|
||||||
|
}
|
||||||
|
else if (i == 0 && hasSearch)
|
||||||
|
{
|
||||||
|
DrawMutedBodyText(Locs.TabBody_SearchNoMatching, 60, 20);
|
||||||
|
}
|
||||||
|
else if (hasSearch)
|
||||||
|
{
|
||||||
|
DrawMutedBodyText(Locs.TabBody_NoMoreResultsFor(this.searchText), 20, 20);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void DrawInstalledPluginList(InstalledPluginListFilter filter)
|
private void DrawInstalledPluginList(InstalledPluginListFilter filter)
|
||||||
|
|
@ -1353,7 +1387,7 @@ internal class PluginInstallerWindow : Window, IDisposable
|
||||||
|
|
||||||
if (pluginList.Count == 0)
|
if (pluginList.Count == 0)
|
||||||
{
|
{
|
||||||
ImGui.TextColored(ImGuiColors.DalamudGrey, Locs.TabBody_SearchNoInstalled);
|
DrawMutedBodyText(Locs.TabBody_SearchNoInstalled, 60, 20);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1363,7 +1397,7 @@ internal class PluginInstallerWindow : Window, IDisposable
|
||||||
|
|
||||||
if (filteredList.Count == 0)
|
if (filteredList.Count == 0)
|
||||||
{
|
{
|
||||||
ImGui.TextColored(ImGuiColors.DalamudGrey2, Locs.TabBody_SearchNoMatching);
|
DrawMutedBodyText(Locs.TabBody_SearchNoMatching, 60, 20);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1419,6 +1453,11 @@ internal class PluginInstallerWindow : Window, IDisposable
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else if (!this.searchText.IsNullOrEmpty())
|
||||||
|
{
|
||||||
|
DrawMutedBodyText(Locs.TabBody_NoMoreResultsFor(this.searchText), 20, 20);
|
||||||
|
ImGuiHelpers.ScaledDummy(20);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void DrawPluginCategories()
|
private void DrawPluginCategories()
|
||||||
|
|
@ -1493,6 +1532,9 @@ internal class PluginInstallerWindow : Window, IDisposable
|
||||||
if (!isCurrent)
|
if (!isCurrent)
|
||||||
{
|
{
|
||||||
this.categoryManager.CurrentGroupKind = groupInfo.GroupKind;
|
this.categoryManager.CurrentGroupKind = groupInfo.GroupKind;
|
||||||
|
|
||||||
|
// Reset search text when switching groups
|
||||||
|
this.searchText = string.Empty;
|
||||||
}
|
}
|
||||||
|
|
||||||
ImGui.Indent();
|
ImGui.Indent();
|
||||||
|
|
@ -3978,6 +4020,8 @@ internal class PluginInstallerWindow : Window, IDisposable
|
||||||
public static string TabBody_NoPluginsInstalled =>
|
public static string TabBody_NoPluginsInstalled =>
|
||||||
string.Format(Loc.Localize("InstallerNoPluginsInstalled", "You don't have any plugins installed yet!\nYou can install them from the \"{0}\" tab."), PluginCategoryManager.Locs.Category_All);
|
string.Format(Loc.Localize("InstallerNoPluginsInstalled", "You don't have any plugins installed yet!\nYou can install them from the \"{0}\" tab."), PluginCategoryManager.Locs.Category_All);
|
||||||
|
|
||||||
|
public static string TabBody_NoPluginsAvailable => Loc.Localize("InstallerNoPluginsAvailable", "No plugins are available at the moment.");
|
||||||
|
|
||||||
public static string TabBody_NoPluginsUpdateable => Loc.Localize("InstallerNoPluginsUpdate", "No plugins have updates available at the moment.");
|
public static string TabBody_NoPluginsUpdateable => Loc.Localize("InstallerNoPluginsUpdate", "No plugins have updates available at the moment.");
|
||||||
|
|
||||||
public static string TabBody_NoPluginsDev => Loc.Localize("InstallerNoPluginsDev", "You don't have any dev plugins. Add them from the settings.");
|
public static string TabBody_NoPluginsDev => Loc.Localize("InstallerNoPluginsDev", "You don't have any dev plugins. Add them from the settings.");
|
||||||
|
|
@ -3992,6 +4036,8 @@ internal class PluginInstallerWindow : Window, IDisposable
|
||||||
|
|
||||||
public static string TabBody_SearchNoInstalled => Loc.Localize("InstallerNoInstalled", "No plugins are currently installed. You can install them from the \"All Plugins\" tab.");
|
public static string TabBody_SearchNoInstalled => Loc.Localize("InstallerNoInstalled", "No plugins are currently installed. You can install them from the \"All Plugins\" tab.");
|
||||||
|
|
||||||
|
public static string TabBody_NoMoreResultsFor(string query) => Loc.Localize("InstallerNoMoreResultsForQuery", "No more search results for \"{0}\".").Format(query);
|
||||||
|
|
||||||
public static string TabBody_ChangelogNone => Loc.Localize("InstallerNoChangelog", "None of your installed plugins have a changelog.");
|
public static string TabBody_ChangelogNone => Loc.Localize("InstallerNoChangelog", "None of your installed plugins have a changelog.");
|
||||||
|
|
||||||
public static string TabBody_ChangelogError => Loc.Localize("InstallerChangelogError", "Could not download changelogs.");
|
public static string TabBody_ChangelogError => Loc.Localize("InstallerChangelogError", "Could not download changelogs.");
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue