using PRecAnnot.Application; namespace PRecAnnot.UI; public sealed class RibbonRegistration { private readonly HashSet _registered = new(StringComparer.OrdinalIgnoreCase); public bool Register(CommandRegistry registry) { var changed = false; foreach (var item in registry.Commands) changed |= _registered.Add($"{item.RibbonPanel}:{item.CommandName}"); return changed; } public void Unregister(CommandRegistry registry) { foreach (var item in registry.Commands) _registered.Remove($"{item.RibbonPanel}:{item.CommandName}"); } public int RegisteredCount => _registered.Count; }