Fix not being able to sort by playtime in the F7 players tab (#21004)
This commit is contained in:
@@ -22,7 +22,7 @@ namespace Content.Client.Administration.UI.Bwoink
|
|||||||
|
|
||||||
if (sel.OverallPlaytime != null)
|
if (sel.OverallPlaytime != null)
|
||||||
{
|
{
|
||||||
Title += $" | {Loc.GetString("generic-playtime-title")}: {sel.PlaytimeString()}";
|
Title += $" | {Loc.GetString("generic-playtime-title")}: {sel.PlaytimeString}";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -121,7 +121,7 @@ namespace Content.Client.Administration.UI.Tabs.PlayerTab
|
|||||||
player.Antag ? "YES" : "NO",
|
player.Antag ? "YES" : "NO",
|
||||||
new StyleBoxFlat(useAltColor ? _altColor : _defaultColor),
|
new StyleBoxFlat(useAltColor ? _altColor : _defaultColor),
|
||||||
player.Connected,
|
player.Connected,
|
||||||
player.PlaytimeString());
|
player.PlaytimeString);
|
||||||
entry.PlayerEntity = player.NetEntity;
|
entry.PlayerEntity = player.NetEntity;
|
||||||
entry.OnPressed += args => OnEntryPressed?.Invoke(args);
|
entry.OnPressed += args => OnEntryPressed?.Invoke(args);
|
||||||
entry.ToolTip = Loc.GetString("player-tab-entry-tooltip");
|
entry.ToolTip = Loc.GetString("player-tab-entry-tooltip");
|
||||||
@@ -150,6 +150,7 @@ namespace Content.Client.Administration.UI.Tabs.PlayerTab
|
|||||||
Header.Character => Compare(x.CharacterName, y.CharacterName),
|
Header.Character => Compare(x.CharacterName, y.CharacterName),
|
||||||
Header.Job => Compare(x.StartingJob, y.StartingJob),
|
Header.Job => Compare(x.StartingJob, y.StartingJob),
|
||||||
Header.Antagonist => x.Antag.CompareTo(y.Antag),
|
Header.Antagonist => x.Antag.CompareTo(y.Antag),
|
||||||
|
Header.Playtime => Compare(x.PlaytimeString, y.PlaytimeString),
|
||||||
_ => 1
|
_ => 1
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -19,6 +19,7 @@ public sealed partial class PlayerTabHeader : ContainerButton
|
|||||||
CharacterLabel.OnKeyBindDown += CharacterClicked;
|
CharacterLabel.OnKeyBindDown += CharacterClicked;
|
||||||
JobLabel.OnKeyBindDown += JobClicked;
|
JobLabel.OnKeyBindDown += JobClicked;
|
||||||
AntagonistLabel.OnKeyBindDown += AntagonistClicked;
|
AntagonistLabel.OnKeyBindDown += AntagonistClicked;
|
||||||
|
PlaytimeLabel.OnKeyBindDown += PlaytimeClicked;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Label GetHeader(Header header)
|
public Label GetHeader(Header header)
|
||||||
@@ -29,6 +30,7 @@ public sealed partial class PlayerTabHeader : ContainerButton
|
|||||||
Header.Character => CharacterLabel,
|
Header.Character => CharacterLabel,
|
||||||
Header.Job => JobLabel,
|
Header.Job => JobLabel,
|
||||||
Header.Antagonist => AntagonistLabel,
|
Header.Antagonist => AntagonistLabel,
|
||||||
|
Header.Playtime => PlaytimeLabel,
|
||||||
_ => throw new ArgumentOutOfRangeException(nameof(header), header, null)
|
_ => throw new ArgumentOutOfRangeException(nameof(header), header, null)
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
@@ -39,6 +41,7 @@ public sealed partial class PlayerTabHeader : ContainerButton
|
|||||||
CharacterLabel.Text = Loc.GetString("player-tab-character");
|
CharacterLabel.Text = Loc.GetString("player-tab-character");
|
||||||
JobLabel.Text = Loc.GetString("player-tab-job");
|
JobLabel.Text = Loc.GetString("player-tab-job");
|
||||||
AntagonistLabel.Text = Loc.GetString("player-tab-antagonist");
|
AntagonistLabel.Text = Loc.GetString("player-tab-antagonist");
|
||||||
|
PlaytimeLabel.Text = Loc.GetString("player-tab-playtime");
|
||||||
}
|
}
|
||||||
|
|
||||||
private void HeaderClicked(GUIBoundKeyEventArgs args, Header header)
|
private void HeaderClicked(GUIBoundKeyEventArgs args, Header header)
|
||||||
@@ -72,16 +75,22 @@ public sealed partial class PlayerTabHeader : ContainerButton
|
|||||||
HeaderClicked(args, Header.Antagonist);
|
HeaderClicked(args, Header.Antagonist);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void PlaytimeClicked(GUIBoundKeyEventArgs args)
|
||||||
|
{
|
||||||
|
HeaderClicked(args, Header.Playtime);
|
||||||
|
}
|
||||||
|
|
||||||
protected override void Dispose(bool disposing)
|
protected override void Dispose(bool disposing)
|
||||||
{
|
{
|
||||||
base.Dispose(disposing);
|
base.Dispose(disposing);
|
||||||
|
|
||||||
if (disposing)
|
if (disposing)
|
||||||
{
|
{
|
||||||
UsernameLabel.OnKeyBindDown += UsernameClicked;
|
UsernameLabel.OnKeyBindDown -= UsernameClicked;
|
||||||
CharacterLabel.OnKeyBindDown += CharacterClicked;
|
CharacterLabel.OnKeyBindDown -= CharacterClicked;
|
||||||
JobLabel.OnKeyBindDown += JobClicked;
|
JobLabel.OnKeyBindDown -= JobClicked;
|
||||||
AntagonistLabel.OnKeyBindDown += AntagonistClicked;
|
AntagonistLabel.OnKeyBindDown -= AntagonistClicked;
|
||||||
|
PlaytimeLabel.OnKeyBindDown -= PlaytimeClicked;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -90,6 +99,7 @@ public sealed partial class PlayerTabHeader : ContainerButton
|
|||||||
Username,
|
Username,
|
||||||
Character,
|
Character,
|
||||||
Job,
|
Job,
|
||||||
Antagonist
|
Antagonist,
|
||||||
|
Playtime
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -16,9 +16,9 @@ namespace Content.Shared.Administration
|
|||||||
bool ActiveThisRound,
|
bool ActiveThisRound,
|
||||||
TimeSpan? OverallPlaytime)
|
TimeSpan? OverallPlaytime)
|
||||||
{
|
{
|
||||||
public string PlaytimeString()
|
private string? _playtimeString;
|
||||||
{
|
|
||||||
return OverallPlaytime?.ToString("%d':'hh':'mm") ?? Loc.GetString("generic-unknown-title");
|
public string PlaytimeString => _playtimeString ??=
|
||||||
}
|
OverallPlaytime?.ToString("%d':'hh':'mm") ?? Loc.GetString("generic-unknown-title");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -36,3 +36,8 @@ Entries:
|
|||||||
- {message: 'Add pop sound effect when using the erase admin verb.', type: Tweak}
|
- {message: 'Add pop sound effect when using the erase admin verb.', type: Tweak}
|
||||||
id: 5
|
id: 5
|
||||||
time: '2023-10-14T09:47:00.0000000+00:00'
|
time: '2023-10-14T09:47:00.0000000+00:00'
|
||||||
|
- author: DrSmugleaf
|
||||||
|
changes:
|
||||||
|
- {message: 'Fixed not being able to sort the F7 players tab by playtime.', type: Fix}
|
||||||
|
id: 6
|
||||||
|
time: '2023-10-14T23:52:00.0000000+00:00'
|
||||||
|
|||||||
Reference in New Issue
Block a user