1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-17 14:11:06 +00:00

Discern between virtual and abstract class bindings

* Previous "virtual" classes (which can't be instantiated) are not corretly named "abstract".
* Added a new "virtual" category for classes, they can't be instantiated from the editor, but can be inherited from script and extensions.
* Converted a large amount of classes from "abstract" to "virtual" where it makes sense.

Most classes that make sense have been converted. Missing:

* Physics servers
* VideoStream
* Script* classes.

which will go in a separate PR due to the complexity involved.
This commit is contained in:
reduz
2022-03-10 08:17:38 +01:00
parent 741bbb9d7c
commit 6f51eca1e3
90 changed files with 1075 additions and 272 deletions

View File

@@ -3858,18 +3858,18 @@ void EditorNode::register_editor_types() {
GDREGISTER_CLASS(EditorScript);
GDREGISTER_CLASS(EditorSelection);
GDREGISTER_CLASS(EditorFileDialog);
GDREGISTER_VIRTUAL_CLASS(EditorSettings);
GDREGISTER_ABSTRACT_CLASS(EditorSettings);
GDREGISTER_CLASS(EditorNode3DGizmo);
GDREGISTER_CLASS(EditorNode3DGizmoPlugin);
GDREGISTER_VIRTUAL_CLASS(EditorResourcePreview);
GDREGISTER_ABSTRACT_CLASS(EditorResourcePreview);
GDREGISTER_CLASS(EditorResourcePreviewGenerator);
GDREGISTER_VIRTUAL_CLASS(EditorFileSystem);
GDREGISTER_ABSTRACT_CLASS(EditorFileSystem);
GDREGISTER_CLASS(EditorFileSystemDirectory);
GDREGISTER_CLASS(EditorVCSInterface);
GDREGISTER_VIRTUAL_CLASS(ScriptEditor);
GDREGISTER_VIRTUAL_CLASS(ScriptEditorBase);
GDREGISTER_ABSTRACT_CLASS(ScriptEditor);
GDREGISTER_ABSTRACT_CLASS(ScriptEditorBase);
GDREGISTER_CLASS(EditorSyntaxHighlighter);
GDREGISTER_VIRTUAL_CLASS(EditorInterface);
GDREGISTER_ABSTRACT_CLASS(EditorInterface);
GDREGISTER_CLASS(EditorExportPlugin);
GDREGISTER_CLASS(EditorResourceConversionPlugin);
GDREGISTER_CLASS(EditorSceneFormatImporter);
@@ -3884,7 +3884,7 @@ void EditorNode::register_editor_types() {
GDREGISTER_CLASS(EditorResourcePicker);
GDREGISTER_CLASS(EditorScriptPicker);
GDREGISTER_VIRTUAL_CLASS(FileSystemDock);
GDREGISTER_ABSTRACT_CLASS(FileSystemDock);
// FIXME: Is this stuff obsolete, or should it be ported to new APIs?
GDREGISTER_CLASS(EditorScenePostImport);