Skip to content

Commit fb87aaa

Browse files
committed
Show warning when no paragon boards are available
1 parent 926ed29 commit fb87aaa

File tree

2 files changed

+38
-4
lines changed

2 files changed

+38
-4
lines changed

D4Companion.Services/OverlayHandler.cs

Lines changed: 36 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -531,7 +531,12 @@ private void DrawGraphicsParagon(object? sender, DrawGraphicsEventArgs e)
531531

532532
var preset = _affixManager.AffixPresets.FirstOrDefault(preset => preset.Name.Equals(_settingsManager.Settings.SelectedAffixPreset));
533533
if (preset == null) return;
534-
if (preset.ParagonBoardsList.Count == 0) return;
534+
if (preset.ParagonBoardsList.Count == 0)
535+
{
536+
DrawGraphicsParagonWarning(e);
537+
return;
538+
}
539+
535540
if (_currentParagonBoardsListIndex >= preset.ParagonBoardsList.Count)
536541
{
537542
_currentParagonBoardsListIndex = 0;
@@ -662,7 +667,12 @@ private void DrawGraphicsParagonCollapsed(object? sender, DrawGraphicsEventArgs
662667

663668
var preset = _affixManager.AffixPresets.FirstOrDefault(preset => preset.Name.Equals(_settingsManager.Settings.SelectedAffixPreset));
664669
if (preset == null) return;
665-
if (preset.ParagonBoardsList.Count == 0) return;
670+
if (preset.ParagonBoardsList.Count == 0)
671+
{
672+
DrawGraphicsParagonWarning(e);
673+
return;
674+
}
675+
666676
if (_currentParagonBoardsListIndex >= preset.ParagonBoardsList.Count)
667677
{
668678
_currentParagonBoardsListIndex = 0;
@@ -788,6 +798,30 @@ private void DrawGraphicsParagonCollapsed(object? sender, DrawGraphicsEventArgs
788798
gfx.DrawRectangle(_brushes[Colors.Goldenrod.ToString()], borderLeft, borderTop, borderLeft + boardWidth + 5, borderTop + boardWidth + 5, stroke: 1);
789799
}
790800

801+
private void DrawGraphicsParagonWarning(DrawGraphicsEventArgs e)
802+
{
803+
var gfx = e.Graphics;
804+
805+
float textOffset = 20;
806+
float fontSize = _settingsManager.Settings.OverlayFontSize;
807+
808+
string currentBuildText = "No paragon boards available.";
809+
var textWidthBuild = gfx.MeasureString(_fonts["consolasBold"], fontSize, currentBuildText).X;
810+
var textHeightBuild = gfx.MeasureString(_fonts["consolasBold"], fontSize, currentBuildText).Y;
811+
float panelWidthBuild = textWidthBuild + 2 * textOffset;
812+
813+
float panelLeftBuild = 0;
814+
float panelTopBuild = 100;
815+
float panelHeightBuild = 50;
816+
float strokeBuild = 1;
817+
gfx.FillRectangle(_brushes["backgroundTransparent"], panelLeftBuild, panelTopBuild, panelLeftBuild + panelWidthBuild, panelTopBuild + panelHeightBuild);
818+
gfx.DrawRectangle(_brushes["border"], panelLeftBuild, panelTopBuild, panelLeftBuild + panelWidthBuild, panelTopBuild + panelHeightBuild, strokeBuild);
819+
820+
float textLeftBuild = panelLeftBuild + textOffset;
821+
float textTopBuild = panelTopBuild + (panelHeightBuild - textHeightBuild) / 2;
822+
gfx.DrawText(_fonts["consolasBold"], fontSize, _brushes["text"], textLeftBuild, textTopBuild, currentBuildText);
823+
}
824+
791825
private void DestroyGraphics(object? sender, DestroyGraphicsEventArgs e)
792826
{
793827
try

D4Companion/common.props

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<Project>
22
<PropertyGroup>
3-
<FileVersion>5.0.2.0</FileVersion>
4-
<Version>5.0.2.0</Version>
3+
<FileVersion>5.1.0.0</FileVersion>
4+
<Version>5.1.0.0</Version>
55
<Copyright>Copyright © 2026</Copyright>
66
<TargetFramework>net10.0-windows</TargetFramework>
77
</PropertyGroup>

0 commit comments

Comments
 (0)