Dalamud/Dalamud/Interface/Internal/Windows/Data/Widgets/AddonInspectorWidget.cs
ItsBexy bf8690fc60 Update Addon Inspector
This updates the Addon Inspector with lots of new features and functionality.

- Features from Caraxi's fork of UiDebug have been incorporated, such as the Element Selector UI and address search.
- Any addon or node can now pop out into its own window.
- Revised the visual style of node field/property information.
- Color values are now visually displayed.
- Any nodes or components that are referenced by fields within the addon will now show that field name in the inspector.
- Added editors for nodes, allowing complete control over most of their properties.
- Improved texture display for Image nodes (and Image node variant types). The active part of the texture is now highlighted, and the boundaries of other parts can be shown via mouseover.
- Highlighting of node bounds onscreen is now more accurate, factoring in rotation (including when using the Element Selector).
- Display of animation timelines has been revamped, showing a table of keyframes for each animation.

A standalone SamplePlugin-based version is available here: https://github.com/ItsBexy/UiDebug2
2024-09-02 21:01:49 -06:00

35 lines
802 B
C#

namespace Dalamud.Interface.Internal.Windows.Data.Widgets;
/// <summary>
/// Widget for displaying addon inspector.
/// </summary>
internal class AddonInspectorWidget : IDataWindowWidget
{
private UiDebug2.UiDebug2? addonInspector;
/// <inheritdoc/>
public string[]? CommandShortcuts { get; init; } = { "ai", "addoninspector" };
/// <inheritdoc/>
public string DisplayName { get; init; } = "Addon Inspector";
/// <inheritdoc/>
public bool Ready { get; set; }
/// <inheritdoc/>
public void Load()
{
this.addonInspector = new UiDebug2.UiDebug2();
if (this.addonInspector is not null)
{
this.Ready = true;
}
}
/// <inheritdoc/>
public void Draw()
{
this.addonInspector?.Draw();
}
}