change color theme feature with reset functionality to settings UI also changed dalamudyellow to lightlessyellow
This commit is contained in:
@@ -90,7 +90,7 @@ internal sealed partial class CharaDataHubUi
|
||||
if (!_uiSharedService.IsInGpose)
|
||||
{
|
||||
ImGuiHelpers.ScaledDummy(5);
|
||||
UiSharedService.DrawGroupedCenteredColorText("Assigning users to characters is only available in GPose.", ImGuiColors.DalamudYellow, 300);
|
||||
UiSharedService.DrawGroupedCenteredColorText("Assigning users to characters is only available in GPose.", UIColors.Get("LightlessYellow"), 300);
|
||||
}
|
||||
UiSharedService.DistanceSeparator();
|
||||
ImGui.TextUnformatted("Users In Lobby");
|
||||
@@ -104,7 +104,7 @@ internal sealed partial class CharaDataHubUi
|
||||
|
||||
if (!_charaDataGposeTogetherManager.UsersInLobby.Any() && !string.IsNullOrEmpty(_charaDataGposeTogetherManager.CurrentGPoseLobbyId))
|
||||
{
|
||||
UiSharedService.DrawGroupedCenteredColorText("No other users in current GPose lobby", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.DrawGroupedCenteredColorText("No other users in current GPose lobby", UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@@ -23,7 +23,7 @@ internal sealed partial class CharaDataHubUi
|
||||
if (dataDto == null)
|
||||
{
|
||||
ImGuiHelpers.ScaledDummy(5);
|
||||
UiSharedService.DrawGroupedCenteredColorText("Select an entry above to edit its data.", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.DrawGroupedCenteredColorText("Select an entry above to edit its data.", UIColors.Get("LightlessYellow"));
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -31,7 +31,7 @@ internal sealed partial class CharaDataHubUi
|
||||
|
||||
if (updateDto == null)
|
||||
{
|
||||
UiSharedService.DrawGroupedCenteredColorText("Something went awfully wrong and there's no update DTO. Try updating Character Data via the button above.", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.DrawGroupedCenteredColorText("Something went awfully wrong and there's no update DTO. Try updating Character Data via the button above.", UIColors.Get("LightlessYellow"));
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -75,7 +75,7 @@ internal sealed partial class CharaDataHubUi
|
||||
}
|
||||
if (_charaDataManager.CharaUpdateTask != null && !_charaDataManager.CharaUpdateTask.IsCompleted)
|
||||
{
|
||||
UiSharedService.ColorTextWrapped("Updating data on server, please wait.", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorTextWrapped("Updating data on server, please wait.", UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -85,7 +85,7 @@ internal sealed partial class CharaDataHubUi
|
||||
{
|
||||
if (_charaDataManager.UploadProgress != null)
|
||||
{
|
||||
UiSharedService.ColorTextWrapped(_charaDataManager.UploadProgress.Value ?? string.Empty, ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorTextWrapped(_charaDataManager.UploadProgress.Value ?? string.Empty, UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
if ((!_charaDataManager.UploadTask?.IsCompleted ?? false) && _uiSharedService.IconTextButton(FontAwesomeIcon.Ban, "Cancel Upload"))
|
||||
{
|
||||
@@ -112,7 +112,7 @@ internal sealed partial class CharaDataHubUi
|
||||
UiSharedService.DrawGrouped(() =>
|
||||
{
|
||||
ImGui.AlignTextToFramePadding();
|
||||
UiSharedService.ColorTextWrapped($"You have {otherUpdates} other entries with unsaved changes.", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorTextWrapped($"You have {otherUpdates} other entries with unsaved changes.", UIColors.Get("LightlessYellow"));
|
||||
ImGui.SameLine();
|
||||
using (ImRaii.Disabled(_charaDataManager.CharaUpdateTask != null && !_charaDataManager.CharaUpdateTask.IsCompleted))
|
||||
{
|
||||
@@ -259,7 +259,7 @@ internal sealed partial class CharaDataHubUi
|
||||
ImGui.SameLine();
|
||||
ImGuiHelpers.ScaledDummy(20, 1);
|
||||
ImGui.SameLine();
|
||||
UiSharedService.ColorTextWrapped("New data was set. It may contain files that require to be uploaded (will happen on Saving to server)", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorTextWrapped("New data was set. It may contain files that require to be uploaded (will happen on Saving to server)", UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
|
||||
ImGui.TextUnformatted("Contains Manipulation Data");
|
||||
@@ -414,7 +414,7 @@ internal sealed partial class CharaDataHubUi
|
||||
}
|
||||
}
|
||||
ImGui.SameLine();
|
||||
using (ImRaii.PushColor(ImGuiCol.Text, ImGuiColors.DalamudYellow, poseCount == maxPoses))
|
||||
using (ImRaii.PushColor(ImGuiCol.Text, UIColors.Get("LightlessYellow"), poseCount == maxPoses))
|
||||
ImGui.TextUnformatted($"{poseCount}/{maxPoses} poses attached");
|
||||
ImGuiHelpers.ScaledDummy(5);
|
||||
|
||||
@@ -424,7 +424,7 @@ internal sealed partial class CharaDataHubUi
|
||||
if (!_uiSharedService.IsInGpose && _charaDataManager.BrioAvailable)
|
||||
{
|
||||
ImGuiHelpers.ScaledDummy(5);
|
||||
UiSharedService.DrawGroupedCenteredColorText("To attach pose and world data you need to be in GPose.", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.DrawGroupedCenteredColorText("To attach pose and world data you need to be in GPose.", UIColors.Get("LightlessYellow"));
|
||||
ImGuiHelpers.ScaledDummy(5);
|
||||
}
|
||||
else if (!_charaDataManager.BrioAvailable)
|
||||
@@ -443,7 +443,7 @@ internal sealed partial class CharaDataHubUi
|
||||
if (pose.Id == null)
|
||||
{
|
||||
UiSharedService.ScaledSameLine(50);
|
||||
_uiSharedService.IconText(FontAwesomeIcon.Plus, ImGuiColors.DalamudYellow);
|
||||
_uiSharedService.IconText(FontAwesomeIcon.Plus, UIColors.Get("LightlessYellow"));
|
||||
UiSharedService.AttachToolTip("This pose has not been added to the server yet. Save changes to upload this Pose data.");
|
||||
}
|
||||
|
||||
@@ -451,14 +451,14 @@ internal sealed partial class CharaDataHubUi
|
||||
if (poseHasChanges)
|
||||
{
|
||||
UiSharedService.ScaledSameLine(50);
|
||||
_uiSharedService.IconText(FontAwesomeIcon.ExclamationTriangle, ImGuiColors.DalamudYellow);
|
||||
_uiSharedService.IconText(FontAwesomeIcon.ExclamationTriangle, UIColors.Get("LightlessYellow"));
|
||||
UiSharedService.AttachToolTip("This pose has changes that have not been saved to the server yet.");
|
||||
}
|
||||
|
||||
UiSharedService.ScaledSameLine(75);
|
||||
if (pose.Description == null && pose.WorldData == null && pose.PoseData == null)
|
||||
{
|
||||
UiSharedService.ColorText("Pose scheduled for deletion", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorText("Pose scheduled for deletion", UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -669,7 +669,7 @@ internal sealed partial class CharaDataHubUi
|
||||
var idText = entry.FullId;
|
||||
if (uDto?.HasChanges ?? false)
|
||||
{
|
||||
UiSharedService.ColorText(idText, ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorText(idText, UIColors.Get("LightlessYellow"));
|
||||
UiSharedService.AttachToolTip("This entry has unsaved changes");
|
||||
}
|
||||
else
|
||||
@@ -724,7 +724,7 @@ internal sealed partial class CharaDataHubUi
|
||||
FontAwesomeIcon eIcon = FontAwesomeIcon.None;
|
||||
if (!Equals(DateTime.MaxValue, entry.ExpiryDate))
|
||||
eIcon = FontAwesomeIcon.Clock;
|
||||
_uiSharedService.IconText(eIcon, ImGuiColors.DalamudYellow);
|
||||
_uiSharedService.IconText(eIcon, UIColors.Get("LightlessYellow"));
|
||||
if (ImGui.IsItemClicked()) SelectedDtoId = entry.Id;
|
||||
if (eIcon != FontAwesomeIcon.None)
|
||||
{
|
||||
@@ -759,13 +759,13 @@ internal sealed partial class CharaDataHubUi
|
||||
if (_charaDataManager.OwnCharaData.Count == _charaDataManager.MaxCreatableCharaData)
|
||||
{
|
||||
ImGui.AlignTextToFramePadding();
|
||||
UiSharedService.ColorTextWrapped("You have reached the maximum Character Data entries and cannot create more.", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorTextWrapped("You have reached the maximum Character Data entries and cannot create more.", UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
}
|
||||
|
||||
if (_charaDataManager.DataCreationTask != null && !_charaDataManager.DataCreationTask.IsCompleted)
|
||||
{
|
||||
UiSharedService.ColorTextWrapped("Creating new character data entry on server...", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorTextWrapped("Creating new character data entry on server...", UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
else if (_charaDataManager.DataCreationTask != null && _charaDataManager.DataCreationTask.IsCompleted)
|
||||
{
|
||||
|
||||
@@ -78,7 +78,7 @@ internal partial class CharaDataHubUi
|
||||
if (!_uiSharedService.IsInGpose)
|
||||
{
|
||||
ImGuiHelpers.ScaledDummy(5);
|
||||
UiSharedService.DrawGroupedCenteredColorText("Spawning and applying pose data is only available in GPose.", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.DrawGroupedCenteredColorText("Spawning and applying pose data is only available in GPose.", UIColors.Get("LightlessYellow"));
|
||||
ImGuiHelpers.ScaledDummy(5);
|
||||
}
|
||||
|
||||
@@ -93,7 +93,7 @@ internal partial class CharaDataHubUi
|
||||
using var indent = ImRaii.PushIndent(5f);
|
||||
if (_charaDataNearbyManager.NearbyData.Count == 0)
|
||||
{
|
||||
UiSharedService.DrawGroupedCenteredColorText("No Shared World Poses found nearby.", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.DrawGroupedCenteredColorText("No Shared World Poses found nearby.", UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
|
||||
bool wasAnythingHovered = false;
|
||||
|
||||
@@ -190,7 +190,7 @@ internal sealed partial class CharaDataHubUi : WindowMediatorSubscriberBase
|
||||
}
|
||||
if (!string.IsNullOrEmpty(_charaDataManager.DataApplicationProgress))
|
||||
{
|
||||
UiSharedService.ColorTextWrapped(_charaDataManager.DataApplicationProgress, ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorTextWrapped(_charaDataManager.DataApplicationProgress, UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
if (_charaDataManager.DataApplicationTask != null)
|
||||
{
|
||||
@@ -436,7 +436,7 @@ internal sealed partial class CharaDataHubUi : WindowMediatorSubscriberBase
|
||||
if (!_hasValidGposeTarget)
|
||||
{
|
||||
ImGuiHelpers.ScaledDummy(3);
|
||||
UiSharedService.DrawGroupedCenteredColorText("Applying data is only available in GPose with a valid selected GPose target.", ImGuiColors.DalamudYellow, 350);
|
||||
UiSharedService.DrawGroupedCenteredColorText("Applying data is only available in GPose with a valid selected GPose target.", UIColors.Get("LightlessYellow"), 350);
|
||||
}
|
||||
|
||||
ImGuiHelpers.ScaledDummy(10);
|
||||
@@ -595,7 +595,7 @@ internal sealed partial class CharaDataHubUi : WindowMediatorSubscriberBase
|
||||
|
||||
if (_configService.Current.FavoriteCodes.Count == 0)
|
||||
{
|
||||
UiSharedService.ColorTextWrapped("You have no favorites added. Add Favorites through the other tabs before you can use this tab.", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorTextWrapped("You have no favorites added. Add Favorites through the other tabs before you can use this tab.", UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -644,7 +644,7 @@ internal sealed partial class CharaDataHubUi : WindowMediatorSubscriberBase
|
||||
ImGui.NewLine();
|
||||
if (!_charaDataManager.DownloadMetaInfoTask?.IsCompleted ?? false)
|
||||
{
|
||||
UiSharedService.ColorTextWrapped("Downloading meta info. Please wait.", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorTextWrapped("Downloading meta info. Please wait.", UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
if ((_charaDataManager.DownloadMetaInfoTask?.IsCompleted ?? false) && !_charaDataManager.DownloadMetaInfoTask.Result.Success)
|
||||
{
|
||||
@@ -850,12 +850,12 @@ internal sealed partial class CharaDataHubUi : WindowMediatorSubscriberBase
|
||||
UiSharedService.ColorTextWrapped("Failure to read MCDF file. MCDF file is possibly corrupt. Re-export the MCDF file and try again.",
|
||||
ImGuiColors.DalamudRed);
|
||||
UiSharedService.ColorTextWrapped("Note: if this is your MCDF, try redrawing yourself, wait and re-export the file. " +
|
||||
"If you received it from someone else have them do the same.", ImGuiColors.DalamudYellow);
|
||||
"If you received it from someone else have them do the same.", UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
UiSharedService.ColorTextWrapped("Loading Character...", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorTextWrapped("Loading Character...", UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -896,7 +896,7 @@ internal sealed partial class CharaDataHubUi : WindowMediatorSubscriberBase
|
||||
}, Directory.Exists(_configService.Current.LastSavedCharaDataLocation) ? _configService.Current.LastSavedCharaDataLocation : null);
|
||||
}
|
||||
UiSharedService.ColorTextWrapped("Note: For best results make sure you have everything you want to be shared as well as the correct character appearance" +
|
||||
" equipped and redraw your character before exporting.", ImGuiColors.DalamudYellow);
|
||||
" equipped and redraw your character before exporting.", UIColors.Get("LightlessYellow"));
|
||||
|
||||
ImGui.Unindent();
|
||||
}
|
||||
|
||||
@@ -185,7 +185,7 @@ public class DrawFolderGroup : DrawFolderBase
|
||||
|
||||
_uiSharedService.IconText(FontAwesomeIcon.UsersCog, (_groupFullInfoDto.GroupPermissions.IsPreferDisableAnimations() != individualAnimDisabled
|
||||
|| _groupFullInfoDto.GroupPermissions.IsPreferDisableSounds() != individualSoundsDisabled
|
||||
|| _groupFullInfoDto.GroupPermissions.IsPreferDisableVFX() != individualVFXDisabled) ? ImGuiColors.DalamudYellow : null);
|
||||
|| _groupFullInfoDto.GroupPermissions.IsPreferDisableVFX() != individualVFXDisabled) ? UIColors.Get("LightlessYellow") : null);
|
||||
if (ImGui.IsItemHovered())
|
||||
{
|
||||
ImGui.BeginTooltip();
|
||||
|
||||
@@ -196,7 +196,7 @@ public class DrawUserPair
|
||||
|
||||
if (_pair.IsPaused)
|
||||
{
|
||||
using var _ = ImRaii.PushColor(ImGuiCol.Text, ImGuiColors.DalamudYellow);
|
||||
using var _ = ImRaii.PushColor(ImGuiCol.Text, UIColors.Get("LightlessYellow"));
|
||||
_uiSharedService.IconText(FontAwesomeIcon.PauseCircle);
|
||||
userPairText = _pair.UserData.AliasOrUID + " is paused";
|
||||
}
|
||||
@@ -274,7 +274,7 @@ public class DrawUserPair
|
||||
{
|
||||
ImGui.SameLine();
|
||||
|
||||
_uiSharedService.IconText(FontAwesomeIcon.ExclamationTriangle, ImGuiColors.DalamudYellow);
|
||||
_uiSharedService.IconText(FontAwesomeIcon.ExclamationTriangle, UIColors.Get("LightlessYellow"));
|
||||
|
||||
string userWarningText = "WARNING: This user exceeds one or more of your defined thresholds:" + UiSharedService.TooltipSeparator;
|
||||
bool shownVram = false;
|
||||
@@ -376,7 +376,7 @@ public class DrawUserPair
|
||||
currentRightSide -= (_uiSharedService.GetIconSize(individualIcon).X + spacingX);
|
||||
|
||||
ImGui.SameLine(currentRightSide);
|
||||
using (ImRaii.PushColor(ImGuiCol.Text, ImGuiColors.DalamudYellow, individualAnimDisabled || individualSoundsDisabled || individualVFXDisabled))
|
||||
using (ImRaii.PushColor(ImGuiCol.Text, UIColors.Get("LightlessYellow"), individualAnimDisabled || individualSoundsDisabled || individualVFXDisabled))
|
||||
_uiSharedService.IconText(individualIcon);
|
||||
if (ImGui.IsItemHovered())
|
||||
{
|
||||
|
||||
@@ -371,7 +371,7 @@ public class DataAnalysisUi : WindowMediatorSubscriberBase
|
||||
ImGuiHelpers.ScaledDummy(5);
|
||||
UiSharedService.DrawGroupedCenteredColorText("Important Note: If you need to fix an animation that should apply across multiple jobs, you need to repeat this process with at least one additional job, " +
|
||||
"otherwise the animation will only be fixed for the currently active job. This goes primarily for emotes that are used across multiple jobs.",
|
||||
ImGuiColors.DalamudYellow, 800);
|
||||
UIColors.Get("LightlessYellow"), 800);
|
||||
ImGuiHelpers.ScaledDummy(5);
|
||||
UiSharedService.DrawGroupedCenteredColorText("WARNING: WHILE RECORDING TRANSIENT DATA, DO NOT CHANGE YOUR APPEARANCE, ENABLED MODS OR ANYTHING. JUST DO THE ANIMATION(S) OR WHATEVER YOU NEED DOING AND STOP THE RECORDING.",
|
||||
ImGuiColors.DalamudRed, 800);
|
||||
@@ -399,7 +399,7 @@ public class DataAnalysisUi : WindowMediatorSubscriberBase
|
||||
if (_transientResourceManager.IsTransientRecording)
|
||||
{
|
||||
ImGui.SameLine();
|
||||
UiSharedService.ColorText($"RECORDING - Time Remaining: {_transientResourceManager.RecordTimeRemaining.Value}", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorText($"RECORDING - Time Remaining: {_transientResourceManager.RecordTimeRemaining.Value}", UIColors.Get("LightlessYellow"));
|
||||
ImGuiHelpers.ScaledDummy(5);
|
||||
UiSharedService.DrawGroupedCenteredColorText("DO NOT CHANGE YOUR APPEARANCE OR MODS WHILE RECORDING, YOU CAN ACCIDENTALLY MAKE SOME OF YOUR APPEARANCE RELATED MODS PERMANENT.", ImGuiColors.DalamudRed, 800);
|
||||
}
|
||||
@@ -422,7 +422,7 @@ public class DataAnalysisUi : WindowMediatorSubscriberBase
|
||||
if (_transientResourceManager.RecordedTransients.Any(k => !k.AlreadyTransient))
|
||||
{
|
||||
ImGuiHelpers.ScaledDummy(5);
|
||||
UiSharedService.DrawGroupedCenteredColorText("Please review the recorded mod files before saving and deselect files that got into the recording on accident.", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.DrawGroupedCenteredColorText("Please review the recorded mod files before saving and deselect files that got into the recording on accident.", UIColors.Get("LightlessYellow"));
|
||||
ImGuiHelpers.ScaledDummy(5);
|
||||
}
|
||||
|
||||
@@ -485,7 +485,7 @@ public class DataAnalysisUi : WindowMediatorSubscriberBase
|
||||
if (isAnalyzing)
|
||||
{
|
||||
UiSharedService.ColorTextWrapped($"Analyzing {_characterAnalyzer.CurrentFile}/{_characterAnalyzer.TotalFiles}",
|
||||
ImGuiColors.DalamudYellow);
|
||||
UIColors.Get("LightlessYellow"));
|
||||
if (_uiSharedService.IconTextButton(FontAwesomeIcon.StopCircle, "Cancel analysis"))
|
||||
{
|
||||
_characterAnalyzer.CancelAnalyze();
|
||||
@@ -496,7 +496,7 @@ public class DataAnalysisUi : WindowMediatorSubscriberBase
|
||||
if (_cachedAnalysis!.Any(c => c.Value.Any(f => !f.Value.IsComputed)))
|
||||
{
|
||||
UiSharedService.ColorTextWrapped("Some entries in the analysis have file size not determined yet, press the button below to analyze your current data",
|
||||
ImGuiColors.DalamudYellow);
|
||||
UIColors.Get("LightlessYellow"));
|
||||
if (_uiSharedService.IconTextButton(FontAwesomeIcon.PlayCircle, "Start analysis (missing entries)"))
|
||||
{
|
||||
_ = _characterAnalyzer.ComputeAnalysis(print: false);
|
||||
@@ -592,7 +592,7 @@ public class DataAnalysisUi : WindowMediatorSubscriberBase
|
||||
{
|
||||
UiSharedService.ColorText($"You exceed your own threshold by " +
|
||||
$"{UiSharedService.ByteToString(actualVramUsage - (currentVramWarning * 1024 * 1024))}.",
|
||||
ImGuiColors.DalamudYellow);
|
||||
UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -609,7 +609,7 @@ public class DataAnalysisUi : WindowMediatorSubscriberBase
|
||||
{
|
||||
UiSharedService.ColorText($"You exceed your own threshold by " +
|
||||
$"{actualTriCount - (currentTriWarning * 1000)} triangles.",
|
||||
ImGuiColors.DalamudYellow);
|
||||
UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -629,7 +629,7 @@ public class DataAnalysisUi : WindowMediatorSubscriberBase
|
||||
{
|
||||
string fileGroupText = fileGroup.Key + " [" + fileGroup.Count() + "]";
|
||||
var requiresCompute = fileGroup.Any(k => !k.IsComputed);
|
||||
using var tabcol = ImRaii.PushColor(ImGuiCol.Tab, UiSharedService.Color(ImGuiColors.DalamudYellow), requiresCompute);
|
||||
using var tabcol = ImRaii.PushColor(ImGuiCol.Tab, UiSharedService.Color(UIColors.Get("LightlessYellow")), requiresCompute);
|
||||
if (requiresCompute)
|
||||
{
|
||||
fileGroupText += " (!)";
|
||||
@@ -668,7 +668,7 @@ public class DataAnalysisUi : WindowMediatorSubscriberBase
|
||||
ImGui.Checkbox("Enable BC7 Conversion Mode", ref _enableBc7ConversionMode);
|
||||
if (_enableBc7ConversionMode)
|
||||
{
|
||||
UiSharedService.ColorText("WARNING BC7 CONVERSION:", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorText("WARNING BC7 CONVERSION:", UIColors.Get("LightlessYellow"));
|
||||
ImGui.SameLine();
|
||||
UiSharedService.ColorText("Converting textures to BC7 is irreversible!", ImGuiColors.DalamudRed);
|
||||
UiSharedService.ColorTextWrapped("- Converting textures to BC7 will reduce their size (compressed and uncompressed) drastically. It is recommended to be used for large (4k+) textures." +
|
||||
@@ -676,7 +676,7 @@ public class DataAnalysisUi : WindowMediatorSubscriberBase
|
||||
Environment.NewLine + "- Before converting textures, make sure to have the original files of the mod you are converting so you can reimport it in case of issues." +
|
||||
Environment.NewLine + "- Conversion will convert all found texture duplicates (entries with more than 1 file path) automatically." +
|
||||
Environment.NewLine + "- Converting textures to BC7 is a very expensive operation and, depending on the amount of textures to convert, will take a while to complete."
|
||||
, ImGuiColors.DalamudYellow);
|
||||
, UIColors.Get("LightlessYellow"));
|
||||
if (_texturesToConvert.Count > 0 && _uiSharedService.IconTextButton(FontAwesomeIcon.PlayCircle, "Start conversion of " + _texturesToConvert.Count + " texture(s)"))
|
||||
{
|
||||
_conversionCancellationTokenSource = _conversionCancellationTokenSource.CancelRecreate();
|
||||
@@ -697,7 +697,7 @@ public class DataAnalysisUi : WindowMediatorSubscriberBase
|
||||
|
||||
ImGui.TextUnformatted("Selected file:");
|
||||
ImGui.SameLine();
|
||||
UiSharedService.ColorText(_selectedHash, ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorText(_selectedHash, UIColors.Get("LightlessYellow"));
|
||||
|
||||
if (_cachedAnalysis[_selectedObjectTab].TryGetValue(_selectedHash, out CharacterAnalyzer.FileDataEntry? item))
|
||||
{
|
||||
@@ -823,8 +823,8 @@ public class DataAnalysisUi : WindowMediatorSubscriberBase
|
||||
}
|
||||
if (string.Equals(_selectedHash, item.Hash, StringComparison.Ordinal))
|
||||
{
|
||||
ImGui.TableSetBgColor(ImGuiTableBgTarget.RowBg1, UiSharedService.Color(ImGuiColors.DalamudYellow));
|
||||
ImGui.TableSetBgColor(ImGuiTableBgTarget.RowBg0, UiSharedService.Color(ImGuiColors.DalamudYellow));
|
||||
ImGui.TableSetBgColor(ImGuiTableBgTarget.RowBg1, UiSharedService.Color(UIColors.Get("LightlessYellow")));
|
||||
ImGui.TableSetBgColor(ImGuiTableBgTarget.RowBg0, UiSharedService.Color(UIColors.Get("LightlessYellow")));
|
||||
}
|
||||
ImGui.TextUnformatted(item.Hash);
|
||||
if (ImGui.IsItemClicked()) _selectedHash = item.Hash;
|
||||
|
||||
@@ -110,7 +110,7 @@ internal class EventViewerUI : WindowMediatorSubscriberBase
|
||||
{
|
||||
ImGui.SameLine();
|
||||
ImGui.AlignTextToFramePadding();
|
||||
UiSharedService.ColorTextWrapped("New events are available, press refresh to update", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorTextWrapped("New events are available, press refresh to update", UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
|
||||
var buttonSize = _uiSharedService.GetIconTextButtonSize(FontAwesomeIcon.FolderOpen, "Open EventLog Folder");
|
||||
@@ -180,7 +180,7 @@ internal class EventViewerUI : WindowMediatorSubscriberBase
|
||||
var iconColor = ev.EventSeverity switch
|
||||
{
|
||||
EventSeverity.Informational => new Vector4(),
|
||||
EventSeverity.Warning => ImGuiColors.DalamudYellow,
|
||||
EventSeverity.Warning => UIColors.Get("LightlessYellow"),
|
||||
EventSeverity.Error => ImGuiColors.DalamudRed,
|
||||
_ => new Vector4()
|
||||
};
|
||||
|
||||
@@ -78,7 +78,7 @@ public partial class IntroUi : WindowMediatorSubscriberBase
|
||||
|
||||
UiSharedService.ColorTextWrapped("Note: Any modifications you have applied through anything but Penumbra cannot be shared and your character state on other clients " +
|
||||
"might look broken because of this or others players mods might not apply on your end altogether. " +
|
||||
"If you want to use this plugin you will have to move your mods to Penumbra.", ImGuiColors.DalamudYellow);
|
||||
"If you want to use this plugin you will have to move your mods to Penumbra.", UIColors.Get("LightlessYellow"));
|
||||
if (!_uiShared.DrawOtherPluginState()) return;
|
||||
ImGui.Separator();
|
||||
if (ImGui.Button("Next##toAgreement"))
|
||||
@@ -172,8 +172,8 @@ public partial class IntroUi : WindowMediatorSubscriberBase
|
||||
"Once the storage folder is set and the scan complete, this page will automatically forward to registration at a service.");
|
||||
UiSharedService.TextWrapped("Note: The initial scan, depending on the amount of mods you have, might take a while. Please wait until it is completed.");
|
||||
UiSharedService.ColorTextWrapped("Warning: once past this step you should not delete the FileCache.csv of Lightless Sync in the Plugin Configurations folder of Dalamud. " +
|
||||
"Otherwise on the next launch a full re-scan of the file cache database will be initiated.", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorTextWrapped("Warning: if the scan is hanging and does nothing for a long time, chances are high your Penumbra folder is not set up properly.", ImGuiColors.DalamudYellow);
|
||||
"Otherwise on the next launch a full re-scan of the file cache database will be initiated.", UIColors.Get("LightlessYellow"));
|
||||
UiSharedService.ColorTextWrapped("Warning: if the scan is hanging and does nothing for a long time, chances are high your Penumbra folder is not set up properly.", UIColors.Get("LightlessYellow"));
|
||||
_uiShared.DrawCacheDirectorySetting();
|
||||
}
|
||||
|
||||
@@ -197,7 +197,7 @@ public partial class IntroUi : WindowMediatorSubscriberBase
|
||||
_configService.Save();
|
||||
}
|
||||
UiSharedService.ColorTextWrapped("The File Compactor can save a tremendeous amount of space on the hard disk for downloads through Lightless. It will incur a minor CPU penalty on download but can speed up " +
|
||||
"loading of other characters. It is recommended to keep it enabled. You can change this setting later anytime in the Lightless settings.", ImGuiColors.DalamudYellow);
|
||||
"loading of other characters. It is recommended to keep it enabled. You can change this setting later anytime in the Lightless settings.", UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
}
|
||||
else if (!_uiShared.ApiController.ServerAlive)
|
||||
@@ -255,7 +255,7 @@ public partial class IntroUi : WindowMediatorSubscriberBase
|
||||
ImGuiHelpers.ScaledDummy(5);
|
||||
UiSharedService.DrawGroupedCenteredColorText("Strongly consider to use OAuth2 to authenticate, if the server supports it (the current main server does). " +
|
||||
"The authentication flow is simpler and you do not require to store or maintain Secret Keys. " +
|
||||
"You already implicitly register using Discord, so the OAuth2 method will be cleaner and more straight-forward to use.", ImGuiColors.DalamudYellow, 500);
|
||||
"You already implicitly register using Discord, so the OAuth2 method will be cleaner and more straight-forward to use.", UIColors.Get("LightlessYellow"), 500);
|
||||
ImGuiHelpers.ScaledDummy(5);
|
||||
|
||||
ImGui.AlignTextToFramePadding();
|
||||
|
||||
@@ -88,7 +88,7 @@ internal class JoinSyncshellUI : WindowMediatorSubscriberBase
|
||||
UiSharedService.ColorTextWrapped("Failed to join the Syncshell. This is due to one of following reasons:" + Environment.NewLine +
|
||||
"- The Syncshell does not exist or the password is incorrect" + Environment.NewLine +
|
||||
"- You are already in that Syncshell or are banned from that Syncshell" + Environment.NewLine +
|
||||
"- The Syncshell is at capacity or has invites disabled" + Environment.NewLine, ImGuiColors.DalamudYellow);
|
||||
"- The Syncshell is at capacity or has invites disabled" + Environment.NewLine, UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -111,7 +111,7 @@ internal class JoinSyncshellUI : WindowMediatorSubscriberBase
|
||||
|| _groupJoinInfo.GroupPermissions.IsPreferDisableAnimations() != _ownPermissions.DisableGroupAnimations)
|
||||
{
|
||||
ImGuiHelpers.ScaledDummy(2f);
|
||||
UiSharedService.ColorText("Your current preferred default Syncshell permissions deviate from the suggested permissions:", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorText("Your current preferred default Syncshell permissions deviate from the suggested permissions:", UIColors.Get("LightlessYellow"));
|
||||
if (_groupJoinInfo.GroupPermissions.IsPreferDisableSounds() != _ownPermissions.DisableGroupSounds)
|
||||
{
|
||||
ImGui.AlignTextToFramePadding();
|
||||
|
||||
@@ -135,12 +135,12 @@ public class PopoutProfileUi : WindowMediatorSubscriberBase
|
||||
if (_pair.UserPair.OwnPermissions.IsPaused())
|
||||
{
|
||||
ImGui.SameLine();
|
||||
UiSharedService.ColorText("You: paused", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorText("You: paused", UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
if (_pair.UserPair.OtherPermissions.IsPaused())
|
||||
{
|
||||
ImGui.SameLine();
|
||||
UiSharedService.ColorText("They: paused", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorText("They: paused", UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
}
|
||||
if (_pair.UserPair.Groups.Any())
|
||||
|
||||
@@ -373,8 +373,8 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
}
|
||||
else if (!_speedTestTask.IsCompleted)
|
||||
{
|
||||
UiSharedService.ColorTextWrapped("Running Speedtest to File Servers...", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorTextWrapped("Please be patient, depending on usage and load this can take a while.", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorTextWrapped("Running Speedtest to File Servers...", UIColors.Get("LightlessYellow"));
|
||||
UiSharedService.ColorTextWrapped("Please be patient, depending on usage and load this can take a while.", UIColors.Get("LightlessYellow"));
|
||||
if (_uiShared.IconTextButton(FontAwesomeIcon.Ban, "Cancel speedtest"))
|
||||
{
|
||||
_speedTestCts?.Cancel();
|
||||
@@ -393,7 +393,7 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
}
|
||||
else
|
||||
{
|
||||
UiSharedService.ColorTextWrapped("Speedtest completed with no results", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorTextWrapped("Speedtest completed with no results", UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -637,7 +637,7 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
|
||||
ImGuiHelpers.ScaledDummy(10);
|
||||
|
||||
UiSharedService.ColorTextWrapped("Exporting MCDF has moved.", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorTextWrapped("Exporting MCDF has moved.", UIColors.Get("LightlessYellow"));
|
||||
ImGuiHelpers.ScaledDummy(5);
|
||||
UiSharedService.TextWrapped("It is now found in the Main UI under \"Your User Menu\" (");
|
||||
ImGui.SameLine();
|
||||
@@ -720,7 +720,7 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
bool isLinux = _dalamudUtilService.IsWine;
|
||||
if (!useFileCompactor && !isLinux)
|
||||
{
|
||||
UiSharedService.ColorTextWrapped("Hint: To free up space when using Lightless consider enabling the File Compactor", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorTextWrapped("Hint: To free up space when using Lightless consider enabling the File Compactor", UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
if (isLinux || !_cacheMonitor.StorageisNTFS) ImGui.BeginDisabled();
|
||||
if (ImGui.Checkbox("Use file compactor", ref useFileCompactor))
|
||||
@@ -756,7 +756,7 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
}
|
||||
else
|
||||
{
|
||||
UiSharedService.ColorText($"File compactor currently running ({_fileCompactor.Progress})", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorText($"File compactor currently running ({_fileCompactor.Progress})", UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
if (isLinux || !_cacheMonitor.StorageisNTFS)
|
||||
{
|
||||
@@ -974,15 +974,74 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
_configService.Save();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
_uiShared.ColoredSeparator(UIColors.Get("LightlessPurple"), 1.5f);
|
||||
ImGui.TreePop();
|
||||
}
|
||||
|
||||
ImGui.Separator();
|
||||
|
||||
if (_uiShared.MediumTreeNode("Colors", UIColors.Get("LightlessPurple")))
|
||||
{
|
||||
ImGui.TextUnformatted("UI Theme Colors");
|
||||
|
||||
var colorNames = new[]
|
||||
{
|
||||
("LightlessPurple", "Lightless Purple", "Primary colors"),
|
||||
("LightlessBlue", "Lightless Blue", "Secondary colors"),
|
||||
("LightlessYellow", "Lightless Yellow", "Warning colors"),
|
||||
("PairBlue", "Pair Blue", "Pair UI elements"),
|
||||
("DimRed", "Dim Red", "Error and offline")
|
||||
};
|
||||
|
||||
foreach (var (colorKey, displayName, description) in colorNames)
|
||||
{
|
||||
var currentColor = UIColors.Get(colorKey);
|
||||
var colorToEdit = currentColor;
|
||||
|
||||
ImGui.AlignTextToFramePadding();
|
||||
|
||||
if (ImGui.ColorEdit4($"##color_{colorKey}", ref colorToEdit, ImGuiColorEditFlags.NoInputs | ImGuiColorEditFlags.AlphaPreviewHalf))
|
||||
{
|
||||
UIColors.Set(colorKey, colorToEdit);
|
||||
}
|
||||
|
||||
ImGui.SameLine();
|
||||
ImGui.TextUnformatted($"{displayName} - {description}");
|
||||
|
||||
if (UIColors.IsCustom(colorKey))
|
||||
{
|
||||
ImGui.SameLine();
|
||||
if (_uiShared.IconTextButton(FontAwesomeIcon.Undo, $"Reset {colorKey}"))
|
||||
{
|
||||
UIColors.Reset(colorKey);
|
||||
}
|
||||
UiSharedService.AttachToolTip("Reset this color to default");
|
||||
}
|
||||
}
|
||||
|
||||
ImGui.Spacing();
|
||||
if (_uiShared.IconTextButton(FontAwesomeIcon.Undo, "Reset All Theme Colors"))
|
||||
{
|
||||
UIColors.ResetAll();
|
||||
}
|
||||
_uiShared.DrawHelpText("This will reset all theme colors to their default values");
|
||||
|
||||
ImGui.Spacing();
|
||||
|
||||
ImGui.TextUnformatted("Server Info Bar Colors");
|
||||
|
||||
if (ImGui.Checkbox("Color-code the Server Info Bar entry according to status", ref useColorsInDtr))
|
||||
{
|
||||
_configService.Current.UseColorsInDtr = useColorsInDtr;
|
||||
_configService.Save();
|
||||
}
|
||||
_uiShared.DrawHelpText("This will color the Server Info Bar entry based on connection status and visible pairs.");
|
||||
|
||||
using (ImRaii.Disabled(!useColorsInDtr))
|
||||
{
|
||||
using var indent2 = ImRaii.PushIndent();
|
||||
using var indent = ImRaii.PushIndent();
|
||||
if (InputDtrColors("Default", ref dtrColorsDefault))
|
||||
{
|
||||
_configService.Current.DtrColorsDefault = dtrColorsDefault;
|
||||
@@ -1003,7 +1062,9 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
_configService.Save();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
ImGui.Spacing();
|
||||
ImGui.TextUnformatted("Nameplate Colors");
|
||||
|
||||
var nameColorsEnabled = _configService.Current.IsNameplateColorsEnabled;
|
||||
var nameColors = _configService.Current.NameplateColors;
|
||||
@@ -1016,6 +1077,7 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
_configService.Save();
|
||||
_nameplateService.RequestRedraw();
|
||||
}
|
||||
_uiShared.DrawHelpText("This will override the nameplate colors for visible paired players in-game.");
|
||||
|
||||
using (ImRaii.Disabled(!nameColorsEnabled))
|
||||
{
|
||||
@@ -1119,7 +1181,6 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
_configService.Current.UseFocusTarget = useFocusTarget;
|
||||
_configService.Save();
|
||||
}
|
||||
|
||||
_uiShared.ColoredSeparator(UIColors.Get("LightlessPurple"), 1.5f);
|
||||
ImGui.TreePop();
|
||||
}
|
||||
@@ -1544,7 +1605,7 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
var selectedServer = _serverConfigurationManager.GetServerByIndex(idx);
|
||||
if (selectedServer == _serverConfigurationManager.CurrentServer)
|
||||
{
|
||||
UiSharedService.ColorTextWrapped("For any changes to be applied to the current service you need to reconnect to the service.", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorTextWrapped("For any changes to be applied to the current service you need to reconnect to the service.", UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
|
||||
bool useOauth = selectedServer.UseOAuth2;
|
||||
@@ -1556,7 +1617,7 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
if (selectedServer.SecretKeys.Any() || useOauth)
|
||||
{
|
||||
UiSharedService.ColorTextWrapped("Characters listed here will automatically connect to the selected Lightless service with the settings as provided below." +
|
||||
" Make sure to enter the character names correctly or use the 'Add current character' button at the bottom.", ImGuiColors.DalamudYellow);
|
||||
" Make sure to enter the character names correctly or use the 'Add current character' button at the bottom.", UIColors.Get("LightlessYellow"));
|
||||
int i = 0;
|
||||
_uiShared.DrawUpdateOAuthUIDsButton(selectedServer);
|
||||
|
||||
@@ -1577,14 +1638,14 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
}
|
||||
if (_secretKeysConversionTask != null && !_secretKeysConversionTask.IsCompleted)
|
||||
{
|
||||
UiSharedService.ColorTextWrapped("Converting Secret Keys to UIDs", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorTextWrapped("Converting Secret Keys to UIDs", UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
if (_secretKeysConversionTask != null && _secretKeysConversionTask.IsCompletedSuccessfully)
|
||||
{
|
||||
Vector4? textColor = null;
|
||||
if (_secretKeysConversionTask.Result.PartialSuccess)
|
||||
{
|
||||
textColor = ImGuiColors.DalamudYellow;
|
||||
textColor = UIColors.Get("LightlessYellow");
|
||||
}
|
||||
if (!_secretKeysConversionTask.Result.Success)
|
||||
{
|
||||
@@ -1618,10 +1679,10 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
if (authWithCid != null)
|
||||
{
|
||||
ImGuiHelpers.ScaledDummy(5);
|
||||
UiSharedService.ColorText("A potential rename/world change from this character was detected:", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorText("A potential rename/world change from this character was detected:", UIColors.Get("LightlessYellow"));
|
||||
using (ImRaii.PushIndent(10f))
|
||||
UiSharedService.ColorText("Entry: " + authWithCid.CharacterName + " - " + _dalamudUtilService.WorldData.Value[(ushort)authWithCid.WorldId], UIColors.Get("LightlessBlue"));
|
||||
UiSharedService.ColorText("Press the button below to adjust that entry to your current character:", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorText("Press the button below to adjust that entry to your current character:", UIColors.Get("LightlessYellow"));
|
||||
using (ImRaii.PushIndent(10f))
|
||||
UiSharedService.ColorText("Current: " + youName + " - " + _dalamudUtilService.WorldData.Value[(ushort)youWorld], UIColors.Get("LightlessBlue"));
|
||||
ImGuiHelpers.ScaledDummy(5);
|
||||
@@ -1767,7 +1828,7 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
}
|
||||
else
|
||||
{
|
||||
UiSharedService.ColorTextWrapped("You need to add a Secret Key first before adding Characters.", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorTextWrapped("You need to add a Secret Key first before adding Characters.", UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
|
||||
ImGui.EndTabItem();
|
||||
@@ -1801,7 +1862,7 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
}
|
||||
else
|
||||
{
|
||||
UiSharedService.ColorTextWrapped("This key is in use and cannot be deleted", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorTextWrapped("This key is in use and cannot be deleted", UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
|
||||
if (item.Key != selectedServer.SecretKeys.Keys.LastOrDefault())
|
||||
@@ -1981,7 +2042,7 @@ public class SettingsUi : WindowMediatorSubscriberBase
|
||||
else
|
||||
{
|
||||
UiSharedService.ColorTextWrapped("Default Permission Settings unavailable for this service. " +
|
||||
"You need to connect to this service to change the default permissions since they are stored on the service.", ImGuiColors.DalamudYellow);
|
||||
"You need to connect to this service to change the default permissions since they are stored on the service.", UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
|
||||
ImGui.EndTabItem();
|
||||
|
||||
@@ -130,12 +130,12 @@ public class StandaloneProfileUi : WindowMediatorSubscriberBase
|
||||
if (Pair.UserPair.OwnPermissions.IsPaused())
|
||||
{
|
||||
ImGui.SameLine();
|
||||
UiSharedService.ColorText("You: paused", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorText("You: paused", UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
if (Pair.UserPair.OtherPermissions.IsPaused())
|
||||
{
|
||||
ImGui.SameLine();
|
||||
UiSharedService.ColorText("They: paused", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorText("They: paused", UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -122,7 +122,7 @@ public class SyncshellAdminUI : WindowMediatorSubscriberBase
|
||||
{
|
||||
if (!_pairManager.GroupPairs.TryGetValue(GroupFullInfo, out var pairs))
|
||||
{
|
||||
UiSharedService.ColorTextWrapped("No users found in this Syncshell", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorTextWrapped("No users found in this Syncshell", UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -280,7 +280,7 @@ public class SyncshellAdminUI : WindowMediatorSubscriberBase
|
||||
{
|
||||
if (!_pruneTestTask.IsCompleted)
|
||||
{
|
||||
UiSharedService.ColorTextWrapped("Calculating inactive users...", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorTextWrapped("Calculating inactive users...", UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -305,7 +305,7 @@ public class SyncshellAdminUI : WindowMediatorSubscriberBase
|
||||
{
|
||||
if (!_pruneTask.IsCompleted)
|
||||
{
|
||||
UiSharedService.ColorTextWrapped("Pruning Syncshell...", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorTextWrapped("Pruning Syncshell...", UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -434,7 +434,7 @@ public class SyncshellAdminUI : WindowMediatorSubscriberBase
|
||||
|
||||
if (!_pwChangeSuccess)
|
||||
{
|
||||
UiSharedService.ColorTextWrapped("Failed to change the password. Password requires to be at least 10 characters long.", ImGuiColors.DalamudYellow);
|
||||
UiSharedService.ColorTextWrapped("Failed to change the password. Password requires to be at least 10 characters long.", UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
|
||||
if (_uiSharedService.IconTextButton(FontAwesomeIcon.Trash, "Delete Syncshell") && UiSharedService.CtrlPressed() && UiSharedService.ShiftPressed())
|
||||
|
||||
@@ -5,7 +5,7 @@ namespace LightlessSync.UI
|
||||
{
|
||||
internal static class UIColors
|
||||
{
|
||||
private static readonly Dictionary<string, string> HexColors = new(StringComparer.OrdinalIgnoreCase)
|
||||
private static readonly Dictionary<string, string> DefaultHexColors = new(StringComparer.OrdinalIgnoreCase)
|
||||
{
|
||||
{ "LightlessPurple", "#ad8af5" },
|
||||
{ "LightlessBlue", "#a6c2ff" },
|
||||
@@ -14,14 +14,55 @@ namespace LightlessSync.UI
|
||||
{ "DimRed", "#d44444" },
|
||||
};
|
||||
|
||||
private static readonly Dictionary<string, Vector4> CustomColors = new(StringComparer.OrdinalIgnoreCase);
|
||||
|
||||
public static Vector4 Get(string name)
|
||||
{
|
||||
if (!HexColors.TryGetValue(name, out var hex))
|
||||
if (CustomColors.TryGetValue(name, out var customColor))
|
||||
return customColor;
|
||||
|
||||
if (!DefaultHexColors.TryGetValue(name, out var hex))
|
||||
throw new ArgumentException($"Color '{name}' not found in UIColors.");
|
||||
|
||||
return HexToRgba(hex);
|
||||
}
|
||||
|
||||
public static void Set(string name, Vector4 color)
|
||||
{
|
||||
if (!DefaultHexColors.ContainsKey(name))
|
||||
throw new ArgumentException($"Color '{name}' not found in UIColors.");
|
||||
|
||||
CustomColors[name] = color;
|
||||
}
|
||||
|
||||
public static void Reset(string name)
|
||||
{
|
||||
CustomColors.Remove(name);
|
||||
}
|
||||
|
||||
public static void ResetAll()
|
||||
{
|
||||
CustomColors.Clear();
|
||||
}
|
||||
|
||||
public static Vector4 GetDefault(string name)
|
||||
{
|
||||
if (!DefaultHexColors.TryGetValue(name, out var hex))
|
||||
throw new ArgumentException($"Color '{name}' not found in UIColors.");
|
||||
|
||||
return HexToRgba(hex);
|
||||
}
|
||||
|
||||
public static bool IsCustom(string name)
|
||||
{
|
||||
return CustomColors.ContainsKey(name);
|
||||
}
|
||||
|
||||
public static IEnumerable<string> GetColorNames()
|
||||
{
|
||||
return DefaultHexColors.Keys;
|
||||
}
|
||||
|
||||
public static Vector4 HexToRgba(string hexColor)
|
||||
{
|
||||
hexColor = hexColor.TrimStart('#');
|
||||
@@ -31,5 +72,14 @@ namespace LightlessSync.UI
|
||||
int a = hexColor.Length == 8 ? int.Parse(hexColor.Substring(6, 2), NumberStyles.HexNumber) : 255;
|
||||
return new Vector4(r / 255f, g / 255f, b / 255f, a / 255f);
|
||||
}
|
||||
|
||||
public static string RgbaToHex(Vector4 color)
|
||||
{
|
||||
int r = (int)(color.X * 255);
|
||||
int g = (int)(color.Y * 255);
|
||||
int b = (int)(color.Z * 255);
|
||||
int a = (int)(color.W * 255);
|
||||
return $"#{r:X2}{g:X2}{b:X2}{(a != 255 ? a.ToString("X2") : "")}";
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -405,7 +405,7 @@ public partial class UiSharedService : DisposableMediatorSubscriberBase
|
||||
}
|
||||
|
||||
public static Vector4 UploadColor((long, long) data) => data.Item1 == 0 ? ImGuiColors.DalamudGrey :
|
||||
data.Item1 == data.Item2 ? UIColors.Get("LightlessBlue") : ImGuiColors.DalamudYellow;
|
||||
data.Item1 == data.Item2 ? UIColors.Get("LightlessBlue") : UIColors.Get("LightlessYellow");
|
||||
|
||||
public bool ApplyNotesFromClipboard(string notes, bool overwrite)
|
||||
{
|
||||
@@ -537,7 +537,7 @@ public partial class UiSharedService : DisposableMediatorSubscriberBase
|
||||
|
||||
public void DrawCacheDirectorySetting()
|
||||
{
|
||||
ColorTextWrapped("Note: The storage folder should be somewhere close to root (i.e. C:\\LightlessStorage) in a new empty folder. DO NOT point this to your game folder. DO NOT point this to your Penumbra folder.", ImGuiColors.DalamudYellow);
|
||||
ColorTextWrapped("Note: The storage folder should be somewhere close to root (i.e. C:\\LightlessStorage) in a new empty folder. DO NOT point this to your game folder. DO NOT point this to your Penumbra folder.", UIColors.Get("LightlessYellow"));
|
||||
var cacheDirectory = _configService.Current.CacheFolder;
|
||||
ImGui.InputText("Storage Folder##cache", ref cacheDirectory, 255, ImGuiInputTextFlags.ReadOnly);
|
||||
|
||||
@@ -723,7 +723,7 @@ public partial class UiSharedService : DisposableMediatorSubscriberBase
|
||||
{
|
||||
if (!_discordOAuthCheck.IsCompleted)
|
||||
{
|
||||
ColorTextWrapped($"Checking OAuth2 compatibility with {selectedServer.ServerUri}", ImGuiColors.DalamudYellow);
|
||||
ColorTextWrapped($"Checking OAuth2 compatibility with {selectedServer.ServerUri}", UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -814,7 +814,7 @@ public partial class UiSharedService : DisposableMediatorSubscriberBase
|
||||
{
|
||||
if (!_discordOAuthUIDs.IsCompleted)
|
||||
{
|
||||
ColorTextWrapped("Checking UIDs on Server", ImGuiColors.DalamudYellow);
|
||||
ColorTextWrapped("Checking UIDs on Server", UIColors.Get("LightlessYellow"));
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user