From 39d77a301b7977dc2b4f33962ac21c5e88a17917 Mon Sep 17 00:00:00 2001 From: neilmjain <69025896+neilmjain@users.noreply.github.com> Date: Thu, 15 Oct 2026 18:01:27 -0400 Subject: [PATCH] add properties to merge groups of options on one page --- MiraAPI/GameOptions/AbstractOptionGroup.cs | 26 ++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/MiraAPI/GameOptions/AbstractOptionGroup.cs b/MiraAPI/GameOptions/AbstractOptionGroup.cs index b62b803..52d8fdf 100644 --- a/MiraAPI/GameOptions/AbstractOptionGroup.cs +++ b/MiraAPI/GameOptions/AbstractOptionGroup.cs @@ -67,6 +67,32 @@ public abstract class AbstractOptionGroup /// public virtual string RoleGuideTitle => GroupName; + /// + /// Gets the key used to combine this group with other option groups on one Match Info Guide page. + /// Groups are combined only with groups from the same plugin that use the same non-empty key. + /// + public virtual string? MatchInfoGuidePageKey => null; + + /// + /// Gets the title of the Match Info Guide page. For groups sharing a page key, the first + /// group in menu order supplies the page title. + /// + public virtual string MatchInfoGuidePageTitle => RoleGuideTitle; + + /// + /// Gets the ordering priority of this Match Info Guide page. Lower values appear first + /// among pages with the same menu category and group priority. Groups sharing a page key + /// use the lowest page-order value among those groups. + /// + public virtual int MatchInfoGuidePageOrder => int.MaxValue; + + /// + /// Gets the number of columns used to lay out options on this Match Info Guide page. + /// For a combined page, groups are placed into these columns. Values are limited to 1-6; + /// for groups sharing a page key, the first group in menu order supplies this value. + /// + public virtual int MatchInfoGuidePageColumns => 2; + /// /// Gets the group . This is used to color the group in the options menu. ///