GD0108: The exported tool button is not in a tool class
Regel-ID |
GD0108 |
Kategorie |
Verwendung |
Fix führt oder führt nicht zu Kompatibilitätsbruch |
Kein Kompatibilitätsbruch |
Standardmäßig aktiviert |
Ja |
Ursache
A property is annotated with the [ExportToolButton] attribute in a class that
is not annotated with the [Tool] attribute.
Regelbeschreibung
The [ExportToolButton] is used to create clickable buttons in the inspector so,
like every other script that runs in the editor, it needs to be annotated with the
[Tool] attribute.
[Tool]
public partial class MyNode : Node
{
[ExportToolButton("Click me!")]
public Callable ClickMeButton => Callable.From(ClickMe);
private static void ClickMe()
{
GD.Print("Hello world!");
}
}
Wie man Verstöße behebt
To fix a violation of this rule, add the [Tool] attribute to the class that
contains the member annotated with the [ExportToolButton] attribute.
Wann man Warnungen unterdrücken sollte
Do not suppress a warning from this rule. The clickable buttons in the inspector
won't be functional if their script is not annotated with the [Tool] attribute.