diff --git a/Dalamud/Interface/UiBuilder.cs b/Dalamud/Interface/UiBuilder.cs index 9c1a76016..0e689236d 100644 --- a/Dalamud/Interface/UiBuilder.cs +++ b/Dalamud/Interface/UiBuilder.cs @@ -8,13 +8,26 @@ using ImGuiScene; namespace Dalamud.Interface { + /// + /// This class represents the Dalamud UI that is drawn on top of the game. + /// It can be used to draw custom windows and overlays. + /// public class UiBuilder : IDisposable { private readonly string namespaceName; + /// + /// The delegate that gets called when Dalamud is ready to draw your windows or overlays. + /// When it is called, you can use static ImGui calls. + /// public event RawDX11Scene.BuildUIDelegate OnBuildUi; - private InterfaceManager interfaceManager; + private readonly InterfaceManager interfaceManager; + /// + /// Create a new UiBuilder and register it. You do not have to call this manually. + /// + /// The interface manager to register on. + /// The plugin namespace. public UiBuilder(InterfaceManager interfaceManager, string namespaceName) { this.namespaceName = namespaceName; @@ -22,6 +35,9 @@ namespace Dalamud.Interface this.interfaceManager.OnDraw += OnDraw; } + /// + /// Unregister the UiBuilder. Do not call this in plugin code. + /// public void Dispose() { this.interfaceManager.OnDraw -= OnDraw; }