<?xml version="1.0"?>
<doc>
    <assembly>
        <name>GodotSharpEditor</name>
    </assembly>
    <members>
        <member name="T:Godot.EditorCommandPalette">
            <summary>
            <para>Object that holds all the available Commands and their shortcuts text. These Commands can be accessed through <b>Editor &gt; Command Palette</b> menu.</para>
            <para>Command key names use slash delimiters to distinguish sections, for example: <c>"example/command1"</c> then <c>example</c> will be the section name.</para>
            <para><code>
            EditorCommandPalette commandPalette = GetEditorInterface().GetCommandPalette();
            // ExternalCommand is a function that will be called with the command is executed.
            Callable commandCallable = new Callable(this, MethodName.ExternalCommand);
            commandPalette.AddCommand("command", "test/command", commandCallable)
            </code></para>
            <para><b>Note:</b> This class shouldn't be instantiated directly. Instead, access the singleton using <see cref="M:Godot.EditorInterface.GetCommandPalette"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorCommandPalette.AddCommand(System.String,System.String,Godot.Callable,System.String)">
            <summary>
            <para>Adds a custom command to EditorCommandPalette.</para>
            <para>- <c>commandName</c>: <see cref="T:System.String"/> (Name of the <b>Command</b>. This is displayed to the user.)</para>
            <para>- <c>keyName</c>: <see cref="T:System.String"/> (Name of the key for a particular <b>Command</b>. This is used to uniquely identify the <b>Command</b>.)</para>
            <para>- <c>bindedCallable</c>: <see cref="T:Godot.Callable"/> (Callable of the <b>Command</b>. This will be executed when the <b>Command</b> is selected.)</para>
            <para>- <c>shortcutText</c>: <see cref="T:System.String"/> (Shortcut text of the <b>Command</b> if available.)</para>
            </summary>
        </member>
        <member name="M:Godot.EditorCommandPalette.RemoveCommand(System.String)">
            <summary>
            <para>Removes the custom command from EditorCommandPalette.</para>
            <para>- <c>keyName</c>: <see cref="T:System.String"/> (Name of the key for a particular <b>Command</b>.)</para>
            </summary>
        </member>
        <member name="T:Godot.EditorDebuggerPlugin">
            <summary>
            <para><see cref="T:Godot.EditorDebuggerPlugin"/> provides functions related to the editor side of the debugger.</para>
            <para>To interact with the debugger, an instance of this class must be added to the editor via <see cref="M:Godot.EditorPlugin.AddDebuggerPlugin(Godot.EditorDebuggerPlugin)"/>.</para>
            <para>Once added, the <see cref="M:Godot.EditorDebuggerPlugin._SetupSession(System.Int32)"/> callback will be called for every <see cref="T:Godot.EditorDebuggerSession"/> available to the plugin, and when new ones are created (the sessions may be inactive during this stage).</para>
            <para>You can retrieve the available <see cref="T:Godot.EditorDebuggerSession"/>s via <see cref="M:Godot.EditorDebuggerPlugin.GetSessions"/> or get a specific one via <see cref="M:Godot.EditorDebuggerPlugin.GetSession(System.Int32)"/>.</para>
            <para></para>
            </summary>
        </member>
        <member name="M:Godot.EditorDebuggerPlugin._Capture(System.String,Godot.Collections.Array,System.Int32)">
            <summary>
            <para>Override this method to process incoming messages. The <c>sessionId</c> is the ID of the <see cref="T:Godot.EditorDebuggerSession"/> that received the message (which you can retrieve via <see cref="M:Godot.EditorDebuggerPlugin.GetSession(System.Int32)"/>).</para>
            </summary>
        </member>
        <member name="M:Godot.EditorDebuggerPlugin._HasCapture(System.String)">
            <summary>
            <para>Override this method to enable receiving messages from the debugger. If <c>capture</c> is "my_message" then messages starting with "my_message:" will be passes to the <see cref="M:Godot.EditorDebuggerPlugin._Capture(System.String,Godot.Collections.Array,System.Int32)"/> method.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorDebuggerPlugin._SetupSession(System.Int32)">
            <summary>
            <para>Override this method to be notified whenever a new <see cref="T:Godot.EditorDebuggerSession"/> is created (the session may be inactive during this stage).</para>
            </summary>
        </member>
        <member name="M:Godot.EditorDebuggerPlugin.GetSession(System.Int32)">
            <summary>
            <para>Returns the <see cref="T:Godot.EditorDebuggerSession"/> with the given <c>id</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorDebuggerPlugin.GetSessions">
            <summary>
            <para>Returns an array of <see cref="T:Godot.EditorDebuggerSession"/> currently available to this debugger plugin.</para>
            <para>Note: Not sessions in the array may be inactive, check their state via <see cref="M:Godot.EditorDebuggerSession.IsActive"/></para>
            </summary>
        </member>
        <member name="T:Godot.EditorDebuggerSession">
            <summary>
            <para>This class cannot be directly instantiated and must be retrieved via a <see cref="T:Godot.EditorDebuggerPlugin"/>.</para>
            <para>You can add tabs to the session UI via <see cref="M:Godot.EditorDebuggerSession.AddSessionTab(Godot.Control)"/>, send messages via <see cref="M:Godot.EditorDebuggerSession.SendMessage(System.String,Godot.Collections.Array)"/>, and toggle <see cref="T:Godot.EngineProfiler"/>s via <see cref="M:Godot.EditorDebuggerSession.ToggleProfiler(System.String,System.Boolean,Godot.Collections.Array)"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorDebuggerSession.SendMessage(System.String,Godot.Collections.Array)">
            <summary>
            <para>Sends the given <c>message</c> to the attached remote instance, optionally passing additionally <c>data</c>. See <see cref="T:Godot.EngineDebugger"/> for how to retrieve those messages.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorDebuggerSession.ToggleProfiler(System.String,System.Boolean,Godot.Collections.Array)">
            <summary>
            <para>Toggle the given <c>profiler</c> on the attached remote instance, optionally passing additionally <c>data</c>. See <see cref="T:Godot.EngineProfiler"/> for more details.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorDebuggerSession.IsBreaked">
            <summary>
            <para>Returns <c>true</c> if the attached remote instance is currently in the debug loop.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorDebuggerSession.IsDebuggable">
            <summary>
            <para>Returns <c>true</c> if the attached remote instance can be debugged.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorDebuggerSession.IsActive">
            <summary>
            <para>Returns <c>true</c> if the debug session is currently attached to a remote instance.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorDebuggerSession.AddSessionTab(Godot.Control)">
            <summary>
            <para>Adds the given <c>control</c> to the debug session UI in the debugger bottom panel.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorDebuggerSession.RemoveSessionTab(Godot.Control)">
            <summary>
            <para>Removes the given <c>control</c> from the debug session UI in the debugger bottom panel.</para>
            </summary>
        </member>
        <member name="E:Godot.EditorDebuggerSession.Started">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorDebuggerSession.Started"/> event of a <see cref="T:Godot.EditorDebuggerSession"/> class.
            </summary>
            <summary>
            <para>Emitted when a remote instance is attached to this session (i.e. the session becomes active).</para>
            </summary>
        </member>
        <member name="E:Godot.EditorDebuggerSession.Stopped">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorDebuggerSession.Stopped"/> event of a <see cref="T:Godot.EditorDebuggerSession"/> class.
            </summary>
            <summary>
            <para>Emitted when a remote instance is detached from this session (i.e. the session becomes inactive).</para>
            </summary>
        </member>
        <member name="T:Godot.EditorDebuggerSession.BreakedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorDebuggerSession.Breaked"/> event of a <see cref="T:Godot.EditorDebuggerSession"/> class.
            </summary>
        </member>
        <member name="E:Godot.EditorDebuggerSession.Breaked">
            <summary>
            <para>Emitted when the attached remote instance enters a break state. If <c>canDebug</c> is <c>true</c>, the remote instance will enter the debug loop.</para>
            </summary>
        </member>
        <member name="E:Godot.EditorDebuggerSession.Continued">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorDebuggerSession.Continued"/> event of a <see cref="T:Godot.EditorDebuggerSession"/> class.
            </summary>
            <summary>
            <para>Emitted when the attached remote instance exits a break state.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorExportPlatform">
            <summary>
            <para>Base resource that provides the functionality of exporting a release build of a project to a platform, from the editor. Stores platform-specific metadata such as the name and supported features of the platform, and performs the exporting of projects, PCK files, and ZIP files. Uses an export template for the platform provided at the time of project exporting.</para>
            <para>Used in scripting by <see cref="T:Godot.EditorExportPlugin"/> to configure platform-specific customization of scenes and resources. See <see cref="M:Godot.EditorExportPlugin._BeginCustomizeScenes(Godot.EditorExportPlatform,System.String[])"/> and <see cref="M:Godot.EditorExportPlugin._BeginCustomizeResources(Godot.EditorExportPlatform,System.String[])"/> for more details.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorExportPlugin">
            <summary>
            <para><see cref="T:Godot.EditorExportPlugin"/>s are automatically invoked whenever the user exports the project. Their most common use is to determine what files are being included in the exported project. For each plugin, <see cref="M:Godot.EditorExportPlugin._ExportBegin(System.String[],System.Boolean,System.String,System.UInt32)"/> is called at the beginning of the export process and then <see cref="M:Godot.EditorExportPlugin._ExportFile(System.String,System.String,System.String[])"/> is called for each exported file.</para>
            <para>To use <see cref="T:Godot.EditorExportPlugin"/>, register it using the <see cref="M:Godot.EditorPlugin.AddExportPlugin(Godot.EditorExportPlugin)"/> method first.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorExportPlugin._BeginCustomizeResources(Godot.EditorExportPlatform,System.String[])">
            <summary>
            <para>Return <c>true</c> if this plugin will customize resources based on the platform and features used.</para>
            <para>When enabled, <see cref="M:Godot.EditorExportPlugin._GetCustomizationConfigurationHash"/>, <see cref="M:Godot.EditorExportPlugin._CustomizeResource(Godot.Resource,System.String)"/> and <see cref="M:Godot.EditorExportPlugin._CustomizeScene(Godot.Node,System.String)"/> will be called and must be implemented.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorExportPlugin._BeginCustomizeScenes(Godot.EditorExportPlatform,System.String[])">
            <summary>
            <para>Return true if this plugin will customize scenes based on the platform and features used.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorExportPlugin._CustomizeResource(Godot.Resource,System.String)">
            <summary>
            <para>Customize a resource. If changes are made to it, return the same or a new resource. Otherwise, return <c>null</c>.</para>
            <para>The <i>path</i> argument is only used when customizing an actual file, otherwise this means that this resource is part of another one and it will be empty.</para>
            <para>Implementing this method is required if <see cref="M:Godot.EditorExportPlugin._BeginCustomizeResources(Godot.EditorExportPlatform,System.String[])"/> returns <c>true</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorExportPlugin._CustomizeScene(Godot.Node,System.String)">
            <summary>
            <para>Customize a scene. If changes are made to it, return the same or a new scene. Otherwise, return <c>null</c>. If a new scene is returned, it is up to you to dispose of the old one.</para>
            <para>Implementing this method is required if <see cref="M:Godot.EditorExportPlugin._BeginCustomizeResources(Godot.EditorExportPlatform,System.String[])"/> returns <c>true</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorExportPlugin._EndCustomizeResources">
            <summary>
            <para>This is called when the customization process for resources ends.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorExportPlugin._EndCustomizeScenes">
            <summary>
            <para>This is called when the customization process for scenes ends.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorExportPlugin._ExportBegin(System.String[],System.Boolean,System.String,System.UInt32)">
            <summary>
            <para>Virtual method to be overridden by the user. It is called when the export starts and provides all information about the export. <c>features</c> is the list of features for the export, <c>isDebug</c> is <c>true</c> for debug builds, <c>path</c> is the target path for the exported project. <c>flags</c> is only used when running a runnable profile, e.g. when using native run on Android.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorExportPlugin._ExportEnd">
            <summary>
            <para>Virtual method to be overridden by the user. Called when the export is finished.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorExportPlugin._ExportFile(System.String,System.String,System.String[])">
            <summary>
            <para>Virtual method to be overridden by the user. Called for each exported file, providing arguments that can be used to identify the file. <c>path</c> is the path of the file, <c>type</c> is the <see cref="T:Godot.Resource"/> represented by the file (e.g. <see cref="T:Godot.PackedScene"/>) and <c>features</c> is the list of features for the export.</para>
            <para>Calling <see cref="M:Godot.EditorExportPlugin.Skip"/> inside this callback will make the file not included in the export.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorExportPlugin._GetCustomizationConfigurationHash">
            <summary>
            <para>Return a hash based on the configuration passed (for both scenes and resources). This helps keep separate caches for separate export configurations.</para>
            <para>Implementing this method is required if <see cref="M:Godot.EditorExportPlugin._BeginCustomizeResources(Godot.EditorExportPlatform,System.String[])"/> returns <c>true</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorExportPlugin._GetExportFeatures(Godot.EditorExportPlatform,System.Boolean)">
            <summary>
            <para>Return a <see cref="T:System.String"/>[] of additional features this preset, for the given <c>platform</c>, should have.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorExportPlugin._GetName">
            <summary>
            <para>Return the name identifier of this plugin (for future identification by the exporter). The plugins are sorted by name before exporting.</para>
            <para>Implementing this method is required.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorExportPlugin.AddSharedObject(System.String,System.String[],System.String)">
            <summary>
            <para>Adds a shared object or a directory containing only shared objects with the given <c>tags</c> and destination <c>path</c>.</para>
            <para><b>Note:</b> In case of macOS exports, those shared objects will be added to <c>Frameworks</c> directory of app bundle.</para>
            <para>In case of a directory code-sign will error if you place non code object in directory.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorExportPlugin.AddIosProjectStaticLib(System.String)">
            <summary>
            <para>Adds a static lib from the given <c>path</c> to the iOS project.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorExportPlugin.AddFile(System.String,System.Byte[],System.Boolean)">
            <summary>
            <para>Adds a custom file to be exported. <c>path</c> is the virtual path that can be used to load the file, <c>file</c> is the binary data of the file. If <c>remap</c> is <c>true</c>, file will not be exported, but instead remapped to the given <c>path</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorExportPlugin.AddIosFramework(System.String)">
            <summary>
            <para>Adds a static library (*.a) or dynamic library (*.dylib, *.framework) to Linking Phase in iOS's Xcode project.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorExportPlugin.AddIosEmbeddedFramework(System.String)">
            <summary>
            <para>Adds a dynamic library (*.dylib, *.framework) to Linking Phase in iOS's Xcode project and embeds it into resulting binary.</para>
            <para><b>Note:</b> For static libraries (*.a) works in same way as <c>add_ios_framework</c>.</para>
            <para>This method should not be used for System libraries as they are already present on the device.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorExportPlugin.AddIosPlistContent(System.String)">
            <summary>
            <para>Adds content for iOS Property List files.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorExportPlugin.AddIosLinkerFlags(System.String)">
            <summary>
            <para>Adds linker flags for the iOS export.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorExportPlugin.AddIosBundleFile(System.String)">
            <summary>
            <para>Adds an iOS bundle file from the given <c>path</c> to the exported project.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorExportPlugin.AddIosCppCode(System.String)">
            <summary>
            <para>Adds a C++ code to the iOS export. The final code is created from the code appended by each active export plugin.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorExportPlugin.AddMacOSPluginFile(System.String)">
            <summary>
            <para>Adds file or directory matching <c>path</c> to <c>PlugIns</c> directory of macOS app bundle.</para>
            <para><b>Note:</b> This is useful only for macOS exports.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorExportPlugin.Skip">
            <summary>
            <para>To be called inside <see cref="M:Godot.EditorExportPlugin._ExportFile(System.String,System.String,System.String[])"/>. Skips the current file, so it's not included in the export.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorFeatureProfile">
            <summary>
            <para>An editor feature profile can be used to disable specific features of the Godot editor. When disabled, the features won't appear in the editor, which makes the editor less cluttered. This is useful in education settings to reduce confusion or when working in a team. For example, artists and level designers could use a feature profile that disables the script editor to avoid accidentally making changes to files they aren't supposed to edit.</para>
            <para>To manage editor feature profiles visually, use <b>Editor &gt; Manage Feature Profiles...</b> at the top of the editor window.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorFeatureProfile.Feature.Feature3D">
            <summary>
            <para>The 3D editor. If this feature is disabled, the 3D editor won't display but 3D nodes will still display in the Create New Node dialog.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorFeatureProfile.Feature.Script">
            <summary>
            <para>The Script tab, which contains the script editor and class reference browser. If this feature is disabled, the Script tab won't display.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorFeatureProfile.Feature.AssetLib">
            <summary>
            <para>The AssetLib tab. If this feature is disabled, the AssetLib tab won't display.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorFeatureProfile.Feature.SceneTree">
            <summary>
            <para>Scene tree editing. If this feature is disabled, the Scene tree dock will still be visible but will be read-only.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorFeatureProfile.Feature.NodeDock">
            <summary>
            <para>The Node dock. If this feature is disabled, signals and groups won't be visible and modifiable from the editor.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorFeatureProfile.Feature.FilesystemDock">
            <summary>
            <para>The FileSystem dock. If this feature is disabled, the FileSystem dock won't be visible.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorFeatureProfile.Feature.ImportDock">
            <summary>
            <para>The Import dock. If this feature is disabled, the Import dock won't be visible.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorFeatureProfile.Feature.HistoryDock">
            <summary>
            <para>The History dock. If this feature is disabled, the History dock won't be visible.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorFeatureProfile.Feature.Max">
            <summary>
            <para>Represents the size of the <see cref="T:Godot.EditorFeatureProfile.Feature"/> enum.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFeatureProfile.SetDisableClass(Godot.StringName,System.Boolean)">
            <summary>
            <para>If <c>disable</c> is <c>true</c>, disables the class specified by <c>className</c>. When disabled, the class won't appear in the Create New Node dialog.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFeatureProfile.IsClassDisabled(Godot.StringName)">
            <summary>
            <para>Returns <c>true</c> if the class specified by <c>className</c> is disabled. When disabled, the class won't appear in the Create New Node dialog.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFeatureProfile.SetDisableClassEditor(Godot.StringName,System.Boolean)">
            <summary>
            <para>If <c>disable</c> is <c>true</c>, disables editing for the class specified by <c>className</c>. When disabled, the class will still appear in the Create New Node dialog but the Inspector will be read-only when selecting a node that extends the class.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFeatureProfile.IsClassEditorDisabled(Godot.StringName)">
            <summary>
            <para>Returns <c>true</c> if editing for the class specified by <c>className</c> is disabled. When disabled, the class will still appear in the Create New Node dialog but the Inspector will be read-only when selecting a node that extends the class.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFeatureProfile.SetDisableClassProperty(Godot.StringName,Godot.StringName,System.Boolean)">
            <summary>
            <para>If <c>disable</c> is <c>true</c>, disables editing for <c>property</c> in the class specified by <c>className</c>. When a property is disabled, it won't appear in the Inspector when selecting a node that extends the class specified by <c>className</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFeatureProfile.IsClassPropertyDisabled(Godot.StringName,Godot.StringName)">
            <summary>
            <para>Returns <c>true</c> if <c>property</c> is disabled in the class specified by <c>className</c>. When a property is disabled, it won't appear in the Inspector when selecting a node that extends the class specified by <c>className</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFeatureProfile.SetDisableFeature(Godot.EditorFeatureProfile.Feature,System.Boolean)">
            <summary>
            <para>If <c>disable</c> is <c>true</c>, disables the editor feature specified in <c>feature</c>. When a feature is disabled, it will disappear from the editor entirely.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFeatureProfile.IsFeatureDisabled(Godot.EditorFeatureProfile.Feature)">
            <summary>
            <para>Returns <c>true</c> if the <c>feature</c> is disabled. When a feature is disabled, it will disappear from the editor entirely.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFeatureProfile.GetFeatureName(Godot.EditorFeatureProfile.Feature)">
            <summary>
            <para>Returns the specified <c>feature</c>'s human-readable name.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFeatureProfile.SaveToFile(System.String)">
            <summary>
            <para>Saves the editor feature profile to a file in JSON format. It can then be imported using the feature profile manager's <b>Import</b> button or the <see cref="M:Godot.EditorFeatureProfile.LoadFromFile(System.String)"/> method.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFeatureProfile.LoadFromFile(System.String)">
            <summary>
            <para>Loads an editor feature profile from a file. The file must follow the JSON format obtained by using the feature profile manager's <b>Export</b> button or the <see cref="M:Godot.EditorFeatureProfile.SaveToFile(System.String)"/> method.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorFileDialog">
            <summary>
            <para><see cref="T:Godot.EditorFileDialog"/> is an enhanced version of <see cref="T:Godot.FileDialog"/> available only to editor plugins. Additional features include list of favorited/recent files and ability to see files as thumbnails grid instead of list.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorFileDialog.FileModeEnum.OpenFile">
            <summary>
            <para>The <see cref="T:Godot.EditorFileDialog"/> can select only one file. Accepting the window will open the file.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorFileDialog.FileModeEnum.OpenFiles">
            <summary>
            <para>The <see cref="T:Godot.EditorFileDialog"/> can select multiple files. Accepting the window will open all files.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorFileDialog.FileModeEnum.OpenDir">
            <summary>
            <para>The <see cref="T:Godot.EditorFileDialog"/> can select only one directory. Accepting the window will open the directory.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorFileDialog.FileModeEnum.OpenAny">
            <summary>
            <para>The <see cref="T:Godot.EditorFileDialog"/> can select a file or directory. Accepting the window will open it.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorFileDialog.FileModeEnum.SaveFile">
            <summary>
            <para>The <see cref="T:Godot.EditorFileDialog"/> can select only one file. Accepting the window will save the file.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorFileDialog.AccessEnum.Resources">
            <summary>
            <para>The <see cref="T:Godot.EditorFileDialog"/> can only view <c>res://</c> directory contents.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorFileDialog.AccessEnum.Userdata">
            <summary>
            <para>The <see cref="T:Godot.EditorFileDialog"/> can only view <c>user://</c> directory contents.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorFileDialog.AccessEnum.Filesystem">
            <summary>
            <para>The <see cref="T:Godot.EditorFileDialog"/> can view the entire local file system.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorFileDialog.DisplayModeEnum.Thumbnails">
            <summary>
            <para>The <see cref="T:Godot.EditorFileDialog"/> displays resources as thumbnails.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorFileDialog.DisplayModeEnum.List">
            <summary>
            <para>The <see cref="T:Godot.EditorFileDialog"/> displays resources as a list of filenames.</para>
            </summary>
        </member>
        <member name="P:Godot.EditorFileDialog.Access">
            <summary>
            <para>The location from which the user may select a file, including <c>res://</c>, <c>user://</c>, and the local file system.</para>
            </summary>
        </member>
        <member name="P:Godot.EditorFileDialog.DisplayMode">
            <summary>
            <para>The view format in which the <see cref="T:Godot.EditorFileDialog"/> displays resources to the user.</para>
            </summary>
        </member>
        <member name="P:Godot.EditorFileDialog.FileMode">
            <summary>
            <para>The dialog's open or save mode, which affects the selection behavior. See <see cref="T:Godot.EditorFileDialog.FileModeEnum"/>.</para>
            </summary>
        </member>
        <member name="P:Godot.EditorFileDialog.CurrentDir">
            <summary>
            <para>The currently occupied directory.</para>
            </summary>
        </member>
        <member name="P:Godot.EditorFileDialog.CurrentFile">
            <summary>
            <para>The currently selected file.</para>
            </summary>
        </member>
        <member name="P:Godot.EditorFileDialog.CurrentPath">
            <summary>
            <para>The file system path in the address bar.</para>
            </summary>
        </member>
        <member name="P:Godot.EditorFileDialog.Filters">
            <summary>
            <para>The available file type filters. For example, this shows only <c>.png</c> and <c>.gd</c> files: <c>set_filters(PackedStringArray(["*.png ; PNG Images","*.gd ; GDScript Files"]))</c>. Multiple file types can also be specified in a single filter. <c>"*.png, *.jpg, *.jpeg ; Supported Images"</c> will show both PNG and JPEG files when selected.</para>
            </summary>
        </member>
        <member name="P:Godot.EditorFileDialog.ShowHiddenFiles">
            <summary>
            <para>If <c>true</c>, hidden files and directories will be visible in the <see cref="T:Godot.EditorFileDialog"/>. This property is synchronized with <c>EditorSettings.filesystem/file_dialog/show_hidden_files</c>.</para>
            </summary>
        </member>
        <member name="P:Godot.EditorFileDialog.DisableOverwriteWarning">
            <summary>
            <para>If <c>true</c>, the <see cref="T:Godot.EditorFileDialog"/> will not warn the user before overwriting files.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFileDialog.ClearFilters">
            <summary>
            <para>Removes all filters except for "All Files (*)".</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFileDialog.AddFilter(System.String,System.String)">
            <summary>
            <para>Adds a comma-delimited file name <c>filter</c> option to the <see cref="T:Godot.EditorFileDialog"/> with an optional <c>description</c>, which restricts what files can be picked.</para>
            <para>A <c>filter</c> should be of the form <c>"filename.extension"</c>, where filename and extension can be <c>*</c> to match any string. Filters starting with <c>.</c> (i.e. empty filenames) are not allowed.</para>
            <para>For example, a <c>filter</c> of <c>"*.tscn, *.scn"</c> and a <c>description</c> of <c>"Scenes"</c> results in filter text "Scenes (*.tscn, *.scn)".</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFileDialog.GetVBox">
            <summary>
            <para>Returns the <c>VBoxContainer</c> used to display the file system.</para>
            <para><b>Warning:</b> This is a required internal node, removing and freeing it may cause a crash. If you wish to hide it or any of its children, use their <see cref="P:Godot.CanvasItem.Visible"/> property.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFileDialog.GetLineEdit">
            <summary>
            <para>Returns the LineEdit for the selected file.</para>
            <para><b>Warning:</b> This is a required internal node, removing and freeing it may cause a crash. If you wish to hide it or any of its children, use their <see cref="P:Godot.CanvasItem.Visible"/> property.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFileDialog.Invalidate">
            <summary>
            <para>Notify the <see cref="T:Godot.EditorFileDialog"/> that its view of the data is no longer accurate. Updates the view contents on next view update.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorFileDialog.FileSelectedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorFileDialog.FileSelected"/> event of a <see cref="T:Godot.EditorFileDialog"/> class.
            </summary>
        </member>
        <member name="E:Godot.EditorFileDialog.FileSelected">
            <summary>
            <para>Emitted when a file is selected.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorFileDialog.FilesSelectedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorFileDialog.FilesSelected"/> event of a <see cref="T:Godot.EditorFileDialog"/> class.
            </summary>
        </member>
        <member name="E:Godot.EditorFileDialog.FilesSelected">
            <summary>
            <para>Emitted when multiple files are selected.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorFileDialog.DirSelectedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorFileDialog.DirSelected"/> event of a <see cref="T:Godot.EditorFileDialog"/> class.
            </summary>
        </member>
        <member name="E:Godot.EditorFileDialog.DirSelected">
            <summary>
            <para>Emitted when a directory is selected.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorFileSystem">
            <summary>
            <para>This object holds information of all resources in the filesystem, their types, etc.</para>
            <para><b>Note:</b> This class shouldn't be instantiated directly. Instead, access the singleton using <see cref="M:Godot.EditorInterface.GetResourceFilesystem"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFileSystem.GetFilesystem">
            <summary>
            <para>Gets the root directory object.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFileSystem.IsScanning">
            <summary>
            <para>Returns <c>true</c> if the filesystem is being scanned.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFileSystem.GetScanningProgress">
            <summary>
            <para>Returns the scan progress for 0 to 1 if the FS is being scanned.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFileSystem.Scan">
            <summary>
            <para>Scan the filesystem for changes.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFileSystem.ScanSources">
            <summary>
            <para>Check if the source of any imported resource changed.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFileSystem.UpdateFile(System.String)">
            <summary>
            <para>Add a file in an existing directory, or schedule file information to be updated on editor restart. Can be used to update text files saved by an external program.</para>
            <para>This will not import the file. To reimport, call <see cref="M:Godot.EditorFileSystem.ReimportFiles(System.String[])"/> or <see cref="M:Godot.EditorFileSystem.Scan"/> methods.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFileSystem.GetFilesystemPath(System.String)">
            <summary>
            <para>Returns a view into the filesystem at <c>path</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFileSystem.GetFileType(System.String)">
            <summary>
            <para>Returns the resource type of the file, given the full path. This returns a string such as <c>"Resource"</c> or <c>"GDScript"</c>, <i>not</i> a file extension such as <c>".gd"</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFileSystem.ReimportFiles(System.String[])">
            <summary>
            <para>Reimports a set of files. Call this if these files or their <c>.import</c> files were directly edited by script or an external program.</para>
            <para>If the file type changed or the file was newly created, use <see cref="M:Godot.EditorFileSystem.UpdateFile(System.String)"/> or <see cref="M:Godot.EditorFileSystem.Scan"/>.</para>
            <para><b>Note:</b> This function blocks until the import is finished. However, the main loop iteration, including timers and <see cref="M:Godot.Node._Process(System.Double)"/>, will occur during the import process due to progress bar updates. Avoid calls to <see cref="M:Godot.EditorFileSystem.ReimportFiles(System.String[])"/> or <see cref="M:Godot.EditorFileSystem.Scan"/> while an import is in progress.</para>
            </summary>
        </member>
        <member name="E:Godot.EditorFileSystem.FilesystemChanged">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorFileSystem.FilesystemChanged"/> event of a <see cref="T:Godot.EditorFileSystem"/> class.
            </summary>
            <summary>
            <para>Emitted if the filesystem changed.</para>
            </summary>
        </member>
        <member name="E:Godot.EditorFileSystem.ScriptClassesUpdated">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorFileSystem.ScriptClassesUpdated"/> event of a <see cref="T:Godot.EditorFileSystem"/> class.
            </summary>
            <summary>
            <para>Emitted when the list of global script classes gets updated.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorFileSystem.SourcesChangedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorFileSystem.SourcesChanged"/> event of a <see cref="T:Godot.EditorFileSystem"/> class.
            </summary>
        </member>
        <member name="E:Godot.EditorFileSystem.SourcesChanged">
            <summary>
            <para>Emitted if the source of any imported file changed.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorFileSystem.ResourcesReimportedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorFileSystem.ResourcesReimported"/> event of a <see cref="T:Godot.EditorFileSystem"/> class.
            </summary>
        </member>
        <member name="E:Godot.EditorFileSystem.ResourcesReimported">
            <summary>
            <para>Emitted if a resource is reimported.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorFileSystem.ResourcesReloadEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorFileSystem.ResourcesReload"/> event of a <see cref="T:Godot.EditorFileSystem"/> class.
            </summary>
        </member>
        <member name="E:Godot.EditorFileSystem.ResourcesReload">
            <summary>
            <para>Emitted if at least one resource is reloaded when the filesystem is scanned.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorFileSystemDirectory">
            <summary>
            <para>A more generalized, low-level variation of the directory concept.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFileSystemDirectory.GetSubdirCount">
            <summary>
            <para>Returns the number of subdirectories in this directory.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFileSystemDirectory.GetSubdir(System.Int32)">
            <summary>
            <para>Returns the subdirectory at index <c>idx</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFileSystemDirectory.GetFileCount">
            <summary>
            <para>Returns the number of files in this directory.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFileSystemDirectory.GetFile(System.Int32)">
            <summary>
            <para>Returns the name of the file at index <c>idx</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFileSystemDirectory.GetFilePath(System.Int32)">
            <summary>
            <para>Returns the path to the file at index <c>idx</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFileSystemDirectory.GetFileType(System.Int32)">
            <summary>
            <para>Returns the resource type of the file at index <c>idx</c>. This returns a string such as <c>"Resource"</c> or <c>"GDScript"</c>, <i>not</i> a file extension such as <c>".gd"</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFileSystemDirectory.GetFileScriptClassName(System.Int32)">
            <summary>
            <para>Returns the name of the script class defined in the file at index <c>idx</c>. If the file doesn't define a script class using the <c>class_name</c> syntax, this will return an empty string.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFileSystemDirectory.GetFileScriptClassExtends(System.Int32)">
            <summary>
            <para>Returns the base class of the script class defined in the file at index <c>idx</c>. If the file doesn't define a script class using the <c>class_name</c> syntax, this will return an empty string.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFileSystemDirectory.GetFileImportIsValid(System.Int32)">
            <summary>
            <para>Returns <c>true</c> if the file at index <c>idx</c> imported properly.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFileSystemDirectory.GetName">
            <summary>
            <para>Returns the name of this directory.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFileSystemDirectory.GetPath">
            <summary>
            <para>Returns the path to this directory.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFileSystemDirectory.GetParent">
            <summary>
            <para>Returns the parent directory for this directory or <c>null</c> if called on a directory at <c>res://</c> or <c>user://</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFileSystemDirectory.FindFileIndex(System.String)">
            <summary>
            <para>Returns the index of the file with name <c>name</c> or <c>-1</c> if not found.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFileSystemDirectory.FindDirIndex(System.String)">
            <summary>
            <para>Returns the index of the directory with name <c>name</c> or <c>-1</c> if not found.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorFileSystemImportFormatSupportQuery">
            <summary>
            <para>This class is used to query and configure a certain import format. It is used in conjunction with asset format import plugins.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFileSystemImportFormatSupportQuery._GetFileExtensions">
            <summary>
            <para>Return the file extensions supported.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFileSystemImportFormatSupportQuery._IsActive">
            <summary>
            <para>Return whether this importer is active.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorFileSystemImportFormatSupportQuery._Query">
            <summary>
            <para>Query support. Return false if import must not continue.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorImportPlugin">
            <summary>
            <para><see cref="T:Godot.EditorImportPlugin"/>s provide a way to extend the editor's resource import functionality. Use them to import resources from custom files or to provide alternatives to the editor's existing importers.</para>
            <para>EditorImportPlugins work by associating with specific file extensions and a resource type. See <see cref="M:Godot.EditorImportPlugin._GetRecognizedExtensions"/> and <see cref="M:Godot.EditorImportPlugin._GetResourceType"/>. They may optionally specify some import presets that affect the import process. EditorImportPlugins are responsible for creating the resources and saving them in the <c>.godot/imported</c> directory (see <c>ProjectSettings.application/config/use_hidden_project_data_directory</c>).</para>
            <para>Below is an example EditorImportPlugin that imports a <see cref="T:Godot.Mesh"/> from a file with the extension ".special" or ".spec":</para>
            <para><code>
            using Godot;
            
            public partial class MySpecialPlugin : EditorImportPlugin
            {
                public override string _GetImporterName()
                {
                    return "my.special.plugin";
                }
            
                public override string _GetVisibleName()
                {
                    return "Special Mesh";
                }
            
                public override string[] _GetRecognizedExtensions()
                {
                    return new string[] { "special", "spec" };
                }
            
                public override string _GetSaveExtension()
                {
                    return "mesh";
                }
            
                public override string _GetResourceType()
                {
                    return "Mesh";
                }
            
                public override int _GetPresetCount()
                {
                    return 1;
                }
            
                public override string _GetPresetName(int presetIndex)
                {
                    return "Default";
                }
            
                public override Godot.Collections.Array&lt;Godot.Collections.Dictionary&gt; _GetImportOptions(string path, int presetIndex)
                {
                    return new Godot.Collections.Array&lt;Godot.Collections.Dictionary&gt;
                    {
                        new Godot.Collections.Dictionary
                        {
                            { "name", "myOption" },
                            { "defaultValue", false },
                        }
                    };
                }
            
                public override int _Import(string sourceFile, string savePath, Godot.Collections.Dictionary options, Godot.Collections.Array&lt;string&gt; platformVariants, Godot.Collections.Array&lt;string&gt; genFiles)
                {
                    using var file = FileAccess.Open(sourceFile, FileAccess.ModeFlags.Read);
                    if (file.GetError() != Error.Ok)
                    {
                        return (int)Error.Failed;
                    }
            
                    var mesh = new ArrayMesh();
                    // Fill the Mesh with data read in "file", left as an exercise to the reader.
                    string filename = $"{savePath}.{_GetSaveExtension()}";
                    return (int)ResourceSaver.Save(mesh, filename);
                }
            }
            </code></para>
            <para>To use <see cref="T:Godot.EditorImportPlugin"/>, register it using the <see cref="M:Godot.EditorPlugin.AddImportPlugin(Godot.EditorImportPlugin,System.Boolean)"/> method first.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorImportPlugin._GetImportOptions(System.String,System.Int32)">
            <summary>
            <para>Gets the options and default values for the preset at this index. Returns an Array of Dictionaries with the following keys: <c>name</c>, <c>default_value</c>, <c>property_hint</c> (optional), <c>hint_string</c> (optional), <c>usage</c> (optional).</para>
            </summary>
        </member>
        <member name="M:Godot.EditorImportPlugin._GetImportOrder">
            <summary>
            <para>Gets the order of this importer to be run when importing resources. Importers with <i>lower</i> import orders will be called first, and higher values will be called later. Use this to ensure the importer runs after the dependencies are already imported. The default import order is <c>0</c> unless overridden by a specific importer. See <see cref="T:Godot.ResourceImporter.ImportOrder"/> for some predefined values.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorImportPlugin._GetImporterName">
            <summary>
            <para>Gets the unique name of the importer.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorImportPlugin._GetOptionVisibility(System.String,Godot.StringName,Godot.Collections.Dictionary)">
            <summary>
            <para>This method can be overridden to hide specific import options if conditions are met. This is mainly useful for hiding options that depend on others if one of them is disabled. For example:</para>
            <para><code>
            public void GetOptionVisibility(string option, Godot.Collections.Dictionary options)
            {
                // Only show the lossy quality setting if the compression mode is set to "Lossy".
                if (option == "compress/lossyQuality" &amp;&amp; options.Contains("compress/mode"))
                {
                    return (int)options["compress/mode"] == COMPRESS_LOSSY; // This is a constant you set
                }
            
                return true;
            }
            </code></para>
            <para>Returns <c>true</c> to make all options always visible.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorImportPlugin._GetPresetCount">
            <summary>
            <para>Gets the number of initial presets defined by the plugin. Use <see cref="M:Godot.EditorImportPlugin._GetImportOptions(System.String,System.Int32)"/> to get the default options for the preset and <see cref="M:Godot.EditorImportPlugin._GetPresetName(System.Int32)"/> to get the name of the preset.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorImportPlugin._GetPresetName(System.Int32)">
            <summary>
            <para>Gets the name of the options preset at this index.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorImportPlugin._GetPriority">
            <summary>
            <para>Gets the priority of this plugin for the recognized extension. Higher priority plugins will be preferred. The default priority is <c>1.0</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorImportPlugin._GetRecognizedExtensions">
            <summary>
            <para>Gets the list of file extensions to associate with this loader (case-insensitive). e.g. <c>["obj"]</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorImportPlugin._GetResourceType">
            <summary>
            <para>Gets the Godot resource type associated with this loader. e.g. <c>"Mesh"</c> or <c>"Animation"</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorImportPlugin._GetSaveExtension">
            <summary>
            <para>Gets the extension used to save this resource in the <c>.godot/imported</c> directory (see <c>ProjectSettings.application/config/use_hidden_project_data_directory</c>).</para>
            </summary>
        </member>
        <member name="M:Godot.EditorImportPlugin._GetVisibleName">
            <summary>
            <para>Gets the name to display in the import window. You should choose this name as a continuation to "Import as", e.g. "Import as Special Mesh".</para>
            </summary>
        </member>
        <member name="M:Godot.EditorImportPlugin._Import(System.String,System.String,Godot.Collections.Dictionary,Godot.Collections.Array{System.String},Godot.Collections.Array{System.String})">
            <summary>
            <para>Imports <c>sourceFile</c> into <c>savePath</c> with the import <c>options</c> specified. The <c>platformVariants</c> and <c>genFiles</c> arrays will be modified by this function.</para>
            <para>This method must be overridden to do the actual importing work. See this class' description for an example of overriding this method.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorImportPlugin.AppendImportExternalResource(System.String,Godot.Collections.Dictionary,System.String,Godot.Variant)">
            <summary>
            <para>This function can only be called during the <see cref="M:Godot.EditorImportPlugin._Import(System.String,System.String,Godot.Collections.Dictionary,Godot.Collections.Array{System.String},Godot.Collections.Array{System.String})"/> callback and it allows manually importing resources from it. This is useful when the imported file generates external resources that require importing (as example, images). Custom parameters for the ".import" file can be passed via the <c>customOptions</c>. Additionally, in cases where multiple importers can handle a file, the <c>customImporter</c> ca be specified to force a specific one. This function performs a resource import and returns immediately with a success or error code. <c>generatorParameters</c> defines optional extra metadata which will be stored as <c>generator_parameters</c> in the <c>remap</c> section of the <c>.import</c> file, for example to store a md5 hash of the source data.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorInspector">
            <summary>
            <para>This is the control that implements property editing in the editor's Settings dialogs, the Inspector dock, etc. To get the <see cref="T:Godot.EditorInspector"/> used in the editor's Inspector dock, use <see cref="M:Godot.EditorInterface.GetInspector"/>.</para>
            <para><see cref="T:Godot.EditorInspector"/> will show properties in the same order as the array returned by <see cref="M:Godot.GodotObject.GetPropertyList"/>.</para>
            <para>If a property's name is path-like (i.e. if it contains forward slashes), <see cref="T:Godot.EditorInspector"/> will create nested sections for "directories" along the path. For example, if a property is named <c>highlighting/gdscript/node_path_color</c>, it will be shown as "Node Path Color" inside the "GDScript" section nested inside the "Highlighting" section.</para>
            <para>If a property has <see cref="F:Godot.PropertyUsageFlags.Group"/> usage, it will group subsequent properties whose name starts with the property's hint string. The group ends when a property does not start with that hint string or when a new group starts. An empty group name effectively ends the current group. <see cref="T:Godot.EditorInspector"/> will create a top-level section for each group. For example, if a property with group usage is named <c>Collide With</c> and its hint string is <c>collide_with_</c>, a subsequent <c>collide_with_area</c> property will be shown as "Area" inside the "Collide With" section. There is also a special case: when the hint string contains the name of a property, that property is grouped too. This is mainly to help grouping properties like <c>font</c>, <c>font_color</c> and <c>font_size</c> (using the hint string <c>font_</c>).</para>
            <para>If a property has <see cref="F:Godot.PropertyUsageFlags.Subgroup"/> usage, a subgroup will be created in the same way as a group, and a second-level section will be created for each subgroup.</para>
            <para><b>Note:</b> Unlike sections created from path-like property names, <see cref="T:Godot.EditorInspector"/> won't capitalize the name for sections created from groups. So properties with group usage usually use capitalized names instead of snake_cased names.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInspector.GetSelectedPath">
            <summary>
            <para>Gets the path of the currently selected property.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorInspector.PropertySelectedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorInspector.PropertySelected"/> event of a <see cref="T:Godot.EditorInspector"/> class.
            </summary>
        </member>
        <member name="E:Godot.EditorInspector.PropertySelected">
            <summary>
            <para>Emitted when a property is selected in the inspector.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorInspector.PropertyKeyedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorInspector.PropertyKeyed"/> event of a <see cref="T:Godot.EditorInspector"/> class.
            </summary>
        </member>
        <member name="E:Godot.EditorInspector.PropertyKeyed">
            <summary>
            <para>Emitted when a property is keyed in the inspector. Properties can be keyed by clicking the "key" icon next to a property when the Animation panel is toggled.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorInspector.PropertyDeletedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorInspector.PropertyDeleted"/> event of a <see cref="T:Godot.EditorInspector"/> class.
            </summary>
        </member>
        <member name="E:Godot.EditorInspector.PropertyDeleted">
            <summary>
            <para>Emitted when a property is removed from the inspector.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorInspector.ResourceSelectedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorInspector.ResourceSelected"/> event of a <see cref="T:Godot.EditorInspector"/> class.
            </summary>
        </member>
        <member name="E:Godot.EditorInspector.ResourceSelected">
            <summary>
            <para>Emitted when a resource is selected in the inspector.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorInspector.ObjectIdSelectedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorInspector.ObjectIdSelected"/> event of a <see cref="T:Godot.EditorInspector"/> class.
            </summary>
        </member>
        <member name="E:Godot.EditorInspector.ObjectIdSelected">
            <summary>
            <para>Emitted when the Edit button of an <see cref="T:Godot.GodotObject"/> has been pressed in the inspector. This is mainly used in the remote scene tree Inspector.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorInspector.PropertyEditedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorInspector.PropertyEdited"/> event of a <see cref="T:Godot.EditorInspector"/> class.
            </summary>
        </member>
        <member name="E:Godot.EditorInspector.PropertyEdited">
            <summary>
            <para>Emitted when a property is edited in the inspector.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorInspector.PropertyToggledEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorInspector.PropertyToggled"/> event of a <see cref="T:Godot.EditorInspector"/> class.
            </summary>
        </member>
        <member name="E:Godot.EditorInspector.PropertyToggled">
            <summary>
            <para>Emitted when a boolean property is toggled in the inspector.</para>
            <para><b>Note:</b> This signal is never emitted if the internal <c>autoclear</c> property enabled. Since this property is always enabled in the editor inspector, this signal is never emitted by the editor itself.</para>
            </summary>
        </member>
        <member name="E:Godot.EditorInspector.EditedObjectChanged">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorInspector.EditedObjectChanged"/> event of a <see cref="T:Godot.EditorInspector"/> class.
            </summary>
            <summary>
            <para>Emitted when the object being edited by the inspector has changed.</para>
            </summary>
        </member>
        <member name="E:Godot.EditorInspector.RestartRequested">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorInspector.RestartRequested"/> event of a <see cref="T:Godot.EditorInspector"/> class.
            </summary>
            <summary>
            <para>Emitted when a property that requires a restart to be applied is edited in the inspector. This is only used in the Project Settings and Editor Settings.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorInspectorPlugin">
            <summary>
            <para><see cref="T:Godot.EditorInspectorPlugin"/> allows adding custom property editors to <see cref="T:Godot.EditorInspector"/>.</para>
            <para>When an object is edited, the <see cref="M:Godot.EditorInspectorPlugin._CanHandle(Godot.GodotObject)"/> function is called and must return <c>true</c> if the object type is supported.</para>
            <para>If supported, the function <see cref="M:Godot.EditorInspectorPlugin._ParseBegin(Godot.GodotObject)"/> will be called, allowing to place custom controls at the beginning of the class.</para>
            <para>Subsequently, the <see cref="M:Godot.EditorInspectorPlugin._ParseCategory(Godot.GodotObject,System.String)"/> and <see cref="M:Godot.EditorInspectorPlugin._ParseProperty(Godot.GodotObject,Godot.Variant.Type,System.String,Godot.PropertyHint,System.String,Godot.PropertyUsageFlags,System.Boolean)"/> are called for every category and property. They offer the ability to add custom controls to the inspector too.</para>
            <para>Finally, <see cref="M:Godot.EditorInspectorPlugin._ParseEnd(Godot.GodotObject)"/> will be called.</para>
            <para>On each of these calls, the "add" functions can be called.</para>
            <para>To use <see cref="T:Godot.EditorInspectorPlugin"/>, register it using the <see cref="M:Godot.EditorPlugin.AddInspectorPlugin(Godot.EditorInspectorPlugin)"/> method first.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInspectorPlugin._CanHandle(Godot.GodotObject)">
            <summary>
            <para>Returns <c>true</c> if this object can be handled by this plugin.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInspectorPlugin._ParseBegin(Godot.GodotObject)">
            <summary>
            <para>Called to allow adding controls at the beginning of the property list for <c>object</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInspectorPlugin._ParseCategory(Godot.GodotObject,System.String)">
            <summary>
            <para>Called to allow adding controls at the beginning of a category in the property list for <c>object</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInspectorPlugin._ParseEnd(Godot.GodotObject)">
            <summary>
            <para>Called to allow adding controls at the end of the property list for <c>object</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInspectorPlugin._ParseGroup(Godot.GodotObject,System.String)">
            <summary>
            <para>Called to allow adding controls at the beginning of a group or a sub-group in the property list for <c>object</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInspectorPlugin._ParseProperty(Godot.GodotObject,Godot.Variant.Type,System.String,Godot.PropertyHint,System.String,Godot.PropertyUsageFlags,System.Boolean)">
            <summary>
            <para>Called to allow adding property-specific editors to the property list for <c>object</c>. The added editor control must extend <see cref="T:Godot.EditorProperty"/>. Returning <c>true</c> removes the built-in editor for this property, otherwise allows to insert a custom editor before the built-in one.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInspectorPlugin.AddCustomControl(Godot.Control)">
            <summary>
            <para>Adds a custom control, which is not necessarily a property editor.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInspectorPlugin.AddPropertyEditor(System.String,Godot.Control,System.Boolean)">
            <summary>
            <para>Adds a property editor for an individual property. The <c>editor</c> control must extend <see cref="T:Godot.EditorProperty"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInspectorPlugin.AddPropertyEditorForMultipleProperties(System.String,System.String[],Godot.Control)">
            <summary>
            <para>Adds an editor that allows modifying multiple properties. The <c>editor</c> control must extend <see cref="T:Godot.EditorProperty"/>.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorInterface">
            <summary>
            <para>EditorInterface gives you control over Godot editor's window. It allows customizing the window, saving and (re-)loading scenes, rendering mesh previews, inspecting and editing resources and objects, and provides access to <see cref="T:Godot.EditorSettings"/>, <see cref="T:Godot.EditorFileSystem"/>, <see cref="T:Godot.EditorResourcePreview"/>, <see cref="T:Godot.ScriptEditor"/>, the editor viewport, and information about scenes.</para>
            <para><b>Note:</b> This class shouldn't be instantiated directly. Instead, access the singleton using <see cref="M:Godot.EditorPlugin.GetEditorInterface"/>.</para>
            </summary>
        </member>
        <member name="P:Godot.EditorInterface.DistractionFreeMode">
            <summary>
            <para>If <c>true</c>, enables distraction-free mode which hides side docks to increase the space available for the main view.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.InspectObject(Godot.GodotObject,System.String,System.Boolean)">
            <summary>
            <para>Shows the given property on the given <c>object</c> in the editor's Inspector dock. If <c>inspectorOnly</c> is <c>true</c>, plugins will not attempt to edit <c>object</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.GetSelection">
            <summary>
            <para>Returns the editor's <see cref="T:Godot.EditorSelection"/> instance.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.GetEditorSettings">
            <summary>
            <para>Returns the editor's <see cref="T:Godot.EditorSettings"/> instance.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.GetScriptEditor">
            <summary>
            <para>Returns the editor's <see cref="T:Godot.ScriptEditor"/> instance.</para>
            <para><b>Warning:</b> Removing and freeing this node will render a part of the editor useless and may cause a crash.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.GetBaseControl">
            <summary>
            <para>Returns the main container of Godot editor's window. For example, you can use it to retrieve the size of the container and place your controls accordingly.</para>
            <para><b>Warning:</b> Removing and freeing this node will render the editor useless and may cause a crash.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.GetEditorScale">
            <summary>
            <para>Returns the actual scale of the editor UI (<c>1.0</c> being 100% scale). This can be used to adjust position and dimensions of the UI added by plugins.</para>
            <para><b>Note:</b> This value is set via the <c>interface/editor/display_scale</c> and <c>interface/editor/custom_display_scale</c> editor settings. Editor must be restarted for changes to be properly applied.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.EditResource(Godot.Resource)">
            <summary>
            <para>Edits the given <see cref="T:Godot.Resource"/>. If the resource is a <see cref="T:Godot.Script"/> you can also edit it with <see cref="M:Godot.EditorInterface.EditScript(Godot.Script,System.Int32,System.Int32,System.Boolean)"/> to specify the line and column position.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.EditNode(Godot.Node)">
            <summary>
            <para>Edits the given <see cref="T:Godot.Node"/>. The node will be also selected if it's inside the scene tree.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.EditScript(Godot.Script,System.Int32,System.Int32,System.Boolean)">
            <summary>
            <para>Edits the given <see cref="T:Godot.Script"/>. The line and column on which to open the script can also be specified. The script will be open with the user-configured editor for the script's language which may be an external editor.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.OpenSceneFromPath(System.String)">
            <summary>
            <para>Opens the scene at the given path.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.ReloadSceneFromPath(System.String)">
            <summary>
            <para>Reloads the scene at the given path.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.PlayMainScene">
            <summary>
            <para>Plays the main scene.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.PlayCurrentScene">
            <summary>
            <para>Plays the currently active scene.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.PlayCustomScene(System.String)">
            <summary>
            <para>Plays the scene specified by its filepath.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.StopPlayingScene">
            <summary>
            <para>Stops the scene that is currently playing.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.IsPlayingScene">
            <summary>
            <para>Returns <c>true</c> if a scene is currently being played, <c>false</c> otherwise. Paused scenes are considered as being played.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.GetPlayingScene">
            <summary>
            <para>Returns the name of the scene that is being played. If no scene is currently being played, returns an empty string.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.GetOpenScenes">
            <summary>
            <para>Returns an <see cref="T:Godot.Collections.Array"/> with the file paths of the currently opened scenes.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.GetEditedSceneRoot">
            <summary>
            <para>Returns the edited (current) scene's root <see cref="T:Godot.Node"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.GetResourcePreviewer">
            <summary>
            <para>Returns the editor's <see cref="T:Godot.EditorResourcePreview"/> instance.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.GetResourceFilesystem">
            <summary>
            <para>Returns the editor's <see cref="T:Godot.EditorFileSystem"/> instance.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.GetEditorMainScreen">
            <summary>
            <para>Returns the editor control responsible for main screen plugins and tools. Use it with plugins that implement <see cref="M:Godot.EditorPlugin._HasMainScreen"/>.</para>
            <para><b>Warning:</b> Removing and freeing this node will render a part of the editor useless and may cause a crash.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.MakeMeshPreviews(Godot.Collections.Array{Godot.Mesh},System.Int32)">
            <summary>
            <para>Returns mesh previews rendered at the given size as an <see cref="T:Godot.Collections.Array"/> of <see cref="T:Godot.Texture2D"/>s.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.SelectFile(System.String)">
            <summary>
            <para>Selects the file, with the path provided by <c>file</c>, in the FileSystem dock.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.GetSelectedPaths">
            <summary>
            <para>Returns an array containing the paths of the currently selected files (and directories) in the <see cref="T:Godot.FileSystemDock"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.GetCurrentPath">
            <summary>
            <para>Returns the current path being viewed in the <see cref="T:Godot.FileSystemDock"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.GetCurrentDirectory">
            <summary>
            <para>Returns the current directory being viewed in the <see cref="T:Godot.FileSystemDock"/>. If a file is selected, its base directory will be returned using <c>String.get_base_dir</c> instead.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.GetFileSystemDock">
            <summary>
            <para>Returns the editor's <see cref="T:Godot.FileSystemDock"/> instance.</para>
            <para><b>Warning:</b> Removing and freeing this node will render a part of the editor useless and may cause a crash.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.GetEditorPaths">
            <summary>
            <para>Returns the <see cref="T:Godot.EditorPaths"/> singleton.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.GetCommandPalette">
            <summary>
            <para>Returns the editor's <see cref="T:Godot.EditorCommandPalette"/> instance.</para>
            <para><b>Warning:</b> Removing and freeing this node will render a part of the editor useless and may cause a crash.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.SetPluginEnabled(System.String,System.Boolean)">
            <summary>
            <para>Sets the enabled status of a plugin. The plugin name is the same as its directory name.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.IsPluginEnabled(System.String)">
            <summary>
            <para>Returns <c>true</c> if the specified <c>plugin</c> is enabled. The plugin name is the same as its directory name.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.SetMovieMakerEnabled(System.Boolean)">
            <summary>
            <para>Sets whether Movie Maker mode is enabled in the editor. See also <see cref="M:Godot.EditorInterface.IsMovieMakerEnabled"/>. See <see cref="T:Godot.MovieWriter"/> for more information.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.IsMovieMakerEnabled">
            <summary>
            <para>Returns <c>true</c> if Movie Maker mode is enabled in the editor. See also <see cref="M:Godot.EditorInterface.SetMovieMakerEnabled(System.Boolean)"/>. See <see cref="T:Godot.MovieWriter"/> for more information.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.GetInspector">
            <summary>
            <para>Returns the editor's <see cref="T:Godot.EditorInspector"/> instance.</para>
            <para><b>Warning:</b> Removing and freeing this node will render a part of the editor useless and may cause a crash.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.SaveScene">
            <summary>
            <para>Saves the scene. Returns either <see cref="F:Godot.Error.Ok"/> or <see cref="F:Godot.Error.CantCreate"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.SaveSceneAs(System.String,System.Boolean)">
            <summary>
            <para>Saves the scene as a file at <c>path</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.RestartEditor(System.Boolean)">
            <summary>
            <para>Restarts the editor. This closes the editor and then opens the same project. If <c>save</c> is <c>true</c>, the project will be saved before restarting.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorInterface.SetMainScreenEditor(System.String)">
            <summary>
            <para>Sets the editor's current main screen to the one specified in <c>name</c>. <c>name</c> must match the text of the tab in question exactly (<c>2D</c>, <c>3D</c>, <c>Script</c>, <c>AssetLib</c>).</para>
            </summary>
        </member>
        <member name="T:Godot.EditorNode3DGizmo">
            <summary>
            <para>Gizmo that is used for providing custom visualization and editing (handles and subgizmos) for Node3D objects. Can be overridden to create custom gizmos, but for simple gizmos creating a <see cref="T:Godot.EditorNode3DGizmoPlugin"/> is usually recommended.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmo._CommitHandle(System.Int32,System.Boolean,Godot.Variant,System.Boolean)">
            <summary>
            <para>Override this method to commit a handle being edited (handles must have been previously added by <see cref="M:Godot.EditorNode3DGizmo.AddHandles(Godot.Vector3[],Godot.Material,System.Int32[],System.Boolean,System.Boolean)"/>). This usually means creating an <see cref="T:Godot.UndoRedo"/> action for the change, using the current handle value as "do" and the <c>restore</c> argument as "undo".</para>
            <para>If the <c>cancel</c> argument is <c>true</c>, the <c>restore</c> value should be directly set, without any <see cref="T:Godot.UndoRedo"/> action.</para>
            <para>The <c>secondary</c> argument is <c>true</c> when the committed handle is secondary (see <see cref="M:Godot.EditorNode3DGizmo.AddHandles(Godot.Vector3[],Godot.Material,System.Int32[],System.Boolean,System.Boolean)"/> for more information).</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmo._CommitSubgizmos(System.Int32[],Godot.Collections.Array{Godot.Transform3D},System.Boolean)">
            <summary>
            <para>Override this method to commit a group of subgizmos being edited (see <see cref="M:Godot.EditorNode3DGizmo._SubgizmosIntersectRay(Godot.Camera3D,Godot.Vector2)"/> and <see cref="M:Godot.EditorNode3DGizmo._SubgizmosIntersectFrustum(Godot.Camera3D,Godot.Collections.Array{Godot.Plane})"/>). This usually means creating an <see cref="T:Godot.UndoRedo"/> action for the change, using the current transforms as "do" and the <c>restores</c> transforms as "undo".</para>
            <para>If the <c>cancel</c> argument is <c>true</c>, the <c>restores</c> transforms should be directly set, without any <see cref="T:Godot.UndoRedo"/> action.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmo._GetHandleName(System.Int32,System.Boolean)">
            <summary>
            <para>Override this method to return the name of an edited handle (handles must have been previously added by <see cref="M:Godot.EditorNode3DGizmo.AddHandles(Godot.Vector3[],Godot.Material,System.Int32[],System.Boolean,System.Boolean)"/>). Handles can be named for reference to the user when editing.</para>
            <para>The <c>secondary</c> argument is <c>true</c> when the requested handle is secondary (see <see cref="M:Godot.EditorNode3DGizmo.AddHandles(Godot.Vector3[],Godot.Material,System.Int32[],System.Boolean,System.Boolean)"/> for more information).</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmo._GetHandleValue(System.Int32,System.Boolean)">
            <summary>
            <para>Override this method to return the current value of a handle. This value will be requested at the start of an edit and used as the <c>restore</c> argument in <see cref="M:Godot.EditorNode3DGizmo._CommitHandle(System.Int32,System.Boolean,Godot.Variant,System.Boolean)"/>.</para>
            <para>The <c>secondary</c> argument is <c>true</c> when the requested handle is secondary (see <see cref="M:Godot.EditorNode3DGizmo.AddHandles(Godot.Vector3[],Godot.Material,System.Int32[],System.Boolean,System.Boolean)"/> for more information).</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmo._GetSubgizmoTransform(System.Int32)">
            <summary>
            <para>Override this method to return the current transform of a subgizmo. This transform will be requested at the start of an edit and used as the <c>restore</c> argument in <see cref="M:Godot.EditorNode3DGizmo._CommitSubgizmos(System.Int32[],Godot.Collections.Array{Godot.Transform3D},System.Boolean)"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmo._IsHandleHighlighted(System.Int32,System.Boolean)">
            <summary>
            <para>Override this method to return <c>true</c> whenever the given handle should be highlighted in the editor.</para>
            <para>The <c>secondary</c> argument is <c>true</c> when the requested handle is secondary (see <see cref="M:Godot.EditorNode3DGizmo.AddHandles(Godot.Vector3[],Godot.Material,System.Int32[],System.Boolean,System.Boolean)"/> for more information).</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmo._Redraw">
            <summary>
            <para>Override this method to add all the gizmo elements whenever a gizmo update is requested. It's common to call <see cref="M:Godot.EditorNode3DGizmo.Clear"/> at the beginning of this method and then add visual elements depending on the node's properties.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmo._SetHandle(System.Int32,System.Boolean,Godot.Camera3D,Godot.Vector2)">
            <summary>
            <para>Override this method to update the node properties when the user drags a gizmo handle (previously added with <see cref="M:Godot.EditorNode3DGizmo.AddHandles(Godot.Vector3[],Godot.Material,System.Int32[],System.Boolean,System.Boolean)"/>). The provided <c>point</c> is the mouse position in screen coordinates and the <c>camera</c> can be used to convert it to raycasts.</para>
            <para>The <c>secondary</c> argument is <c>true</c> when the edited handle is secondary (see <see cref="M:Godot.EditorNode3DGizmo.AddHandles(Godot.Vector3[],Godot.Material,System.Int32[],System.Boolean,System.Boolean)"/> for more information).</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmo._SetSubgizmoTransform(System.Int32,Godot.Transform3D)">
            <summary>
            <para>Override this method to update the node properties during subgizmo editing (see <see cref="M:Godot.EditorNode3DGizmo._SubgizmosIntersectRay(Godot.Camera3D,Godot.Vector2)"/> and <see cref="M:Godot.EditorNode3DGizmo._SubgizmosIntersectFrustum(Godot.Camera3D,Godot.Collections.Array{Godot.Plane})"/>). The <c>transform</c> is given in the Node3D's local coordinate system.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmo._SubgizmosIntersectFrustum(Godot.Camera3D,Godot.Collections.Array{Godot.Plane})">
            <summary>
            <para>Override this method to allow selecting subgizmos using mouse drag box selection. Given a <c>camera</c> and a <c>frustum</c>, this method should return which subgizmos are contained within the frustum. The <c>frustum</c> argument consists of an <c>Array</c> with all the <c>Plane</c>s that make up the selection frustum. The returned value should contain a list of unique subgizmo identifiers, which can have any non-negative value and will be used in other virtual methods like <see cref="M:Godot.EditorNode3DGizmo._GetSubgizmoTransform(System.Int32)"/> or <see cref="M:Godot.EditorNode3DGizmo._CommitSubgizmos(System.Int32[],Godot.Collections.Array{Godot.Transform3D},System.Boolean)"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmo._SubgizmosIntersectRay(Godot.Camera3D,Godot.Vector2)">
            <summary>
            <para>Override this method to allow selecting subgizmos using mouse clicks. Given a <c>camera</c> and a <c>point</c> in screen coordinates, this method should return which subgizmo should be selected. The returned value should be a unique subgizmo identifier, which can have any non-negative value and will be used in other virtual methods like <see cref="M:Godot.EditorNode3DGizmo._GetSubgizmoTransform(System.Int32)"/> or <see cref="M:Godot.EditorNode3DGizmo._CommitSubgizmos(System.Int32[],Godot.Collections.Array{Godot.Transform3D},System.Boolean)"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmo.AddLines(Godot.Vector3[],Godot.Material,System.Boolean,System.Nullable{Godot.Color})">
            <summary>
            <para>Adds lines to the gizmo (as sets of 2 points), with a given material. The lines are used for visualizing the gizmo. Call this method during <see cref="M:Godot.EditorNode3DGizmo._Redraw"/>.</para>
            </summary>
            <param name="modulate">If the parameter is null, then the default value is <c>new Color(1, 1, 1, 1)</c>.</param>
        </member>
        <member name="M:Godot.EditorNode3DGizmo.AddMesh(Godot.Mesh,Godot.Material,System.Nullable{Godot.Transform3D},Godot.SkinReference)">
            <summary>
            <para>Adds a mesh to the gizmo with the specified <c>material</c>, local <c>transform</c> and <c>skeleton</c>. Call this method during <see cref="M:Godot.EditorNode3DGizmo._Redraw"/>.</para>
            </summary>
            <param name="transform">If the parameter is null, then the default value is <c>Transform3D.Identity</c>.</param>
        </member>
        <member name="M:Godot.EditorNode3DGizmo.AddCollisionSegments(Godot.Vector3[])">
            <summary>
            <para>Adds the specified <c>segments</c> to the gizmo's collision shape for picking. Call this method during <see cref="M:Godot.EditorNode3DGizmo._Redraw"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmo.AddCollisionTriangles(Godot.TriangleMesh)">
            <summary>
            <para>Adds collision triangles to the gizmo for picking. A <see cref="T:Godot.TriangleMesh"/> can be generated from a regular <see cref="T:Godot.Mesh"/> too. Call this method during <see cref="M:Godot.EditorNode3DGizmo._Redraw"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmo.AddUnscaledBillboard(Godot.Material,System.Single,System.Nullable{Godot.Color})">
            <summary>
            <para>Adds an unscaled billboard for visualization and selection. Call this method during <see cref="M:Godot.EditorNode3DGizmo._Redraw"/>.</para>
            </summary>
            <param name="modulate">If the parameter is null, then the default value is <c>new Color(1, 1, 1, 1)</c>.</param>
        </member>
        <member name="M:Godot.EditorNode3DGizmo.AddHandles(Godot.Vector3[],Godot.Material,System.Int32[],System.Boolean,System.Boolean)">
            <summary>
            <para>Adds a list of handles (points) which can be used to edit the properties of the gizmo's Node3D. The <c>ids</c> argument can be used to specify a custom identifier for each handle, if an empty <c>Array</c> is passed, the ids will be assigned automatically from the <c>handles</c> argument order.</para>
            <para>The <c>secondary</c> argument marks the added handles as secondary, meaning they will normally have lower selection priority than regular handles. When the user is holding the shift key secondary handles will switch to have higher priority than regular handles. This change in priority can be used to place multiple handles at the same point while still giving the user control on their selection.</para>
            <para>There are virtual methods which will be called upon editing of these handles. Call this method during <see cref="M:Godot.EditorNode3DGizmo._Redraw"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmo.SetNode3D(Godot.Node)">
            <summary>
            <para>Sets the reference <see cref="T:Godot.Node3D"/> node for the gizmo. <c>node</c> must inherit from <see cref="T:Godot.Node3D"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmo.GetNode3D">
            <summary>
            <para>Returns the <see cref="T:Godot.Node3D"/> node associated with this gizmo.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmo.GetPlugin">
            <summary>
            <para>Returns the <see cref="T:Godot.EditorNode3DGizmoPlugin"/> that owns this gizmo. It's useful to retrieve materials using <see cref="M:Godot.EditorNode3DGizmoPlugin.GetMaterial(System.String,Godot.EditorNode3DGizmo)"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmo.Clear">
            <summary>
            <para>Removes everything in the gizmo including meshes, collisions and handles.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmo.SetHidden(System.Boolean)">
            <summary>
            <para>Sets the gizmo's hidden state. If <c>true</c>, the gizmo will be hidden. If <c>false</c>, it will be shown.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmo.IsSubgizmoSelected(System.Int32)">
            <summary>
            <para>Returns <c>true</c> if the given subgizmo is currently selected. Can be used to highlight selected elements during <see cref="M:Godot.EditorNode3DGizmo._Redraw"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmo.GetSubgizmoSelection">
            <summary>
            <para>Returns a list of the currently selected subgizmos. Can be used to highlight selected elements during <see cref="M:Godot.EditorNode3DGizmo._Redraw"/>.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorNode3DGizmoPlugin">
            <summary>
            <para><see cref="T:Godot.EditorNode3DGizmoPlugin"/> allows you to define a new type of Gizmo. There are two main ways to do so: extending <see cref="T:Godot.EditorNode3DGizmoPlugin"/> for the simpler gizmos, or creating a new <see cref="T:Godot.EditorNode3DGizmo"/> type. See the tutorial in the documentation for more info.</para>
            <para>To use <see cref="T:Godot.EditorNode3DGizmoPlugin"/>, register it using the <see cref="M:Godot.EditorPlugin.AddNode3DGizmoPlugin(Godot.EditorNode3DGizmoPlugin)"/> method first.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmoPlugin._CanBeHidden">
            <summary>
            <para>Override this method to define whether the gizmos handled by this plugin can be hidden or not. Returns <c>true</c> if not overridden.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmoPlugin._CommitHandle(Godot.EditorNode3DGizmo,System.Int32,System.Boolean,Godot.Variant,System.Boolean)">
            <summary>
            <para>Override this method to commit a handle being edited (handles must have been previously added by <see cref="M:Godot.EditorNode3DGizmo.AddHandles(Godot.Vector3[],Godot.Material,System.Int32[],System.Boolean,System.Boolean)"/> during <see cref="M:Godot.EditorNode3DGizmoPlugin._Redraw(Godot.EditorNode3DGizmo)"/>). This usually means creating an <see cref="T:Godot.UndoRedo"/> action for the change, using the current handle value as "do" and the <c>restore</c> argument as "undo".</para>
            <para>If the <c>cancel</c> argument is <c>true</c>, the <c>restore</c> value should be directly set, without any <see cref="T:Godot.UndoRedo"/> action.</para>
            <para>The <c>secondary</c> argument is <c>true</c> when the committed handle is secondary (see <see cref="M:Godot.EditorNode3DGizmo.AddHandles(Godot.Vector3[],Godot.Material,System.Int32[],System.Boolean,System.Boolean)"/> for more information).</para>
            <para>Called for this plugin's active gizmos.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmoPlugin._CommitSubgizmos(Godot.EditorNode3DGizmo,System.Int32[],Godot.Collections.Array{Godot.Transform3D},System.Boolean)">
            <summary>
            <para>Override this method to commit a group of subgizmos being edited (see <see cref="M:Godot.EditorNode3DGizmoPlugin._SubgizmosIntersectRay(Godot.EditorNode3DGizmo,Godot.Camera3D,Godot.Vector2)"/> and <see cref="M:Godot.EditorNode3DGizmoPlugin._SubgizmosIntersectFrustum(Godot.EditorNode3DGizmo,Godot.Camera3D,Godot.Collections.Array{Godot.Plane})"/>). This usually means creating an <see cref="T:Godot.UndoRedo"/> action for the change, using the current transforms as "do" and the <c>restores</c> transforms as "undo".</para>
            <para>If the <c>cancel</c> argument is <c>true</c>, the <c>restores</c> transforms should be directly set, without any <see cref="T:Godot.UndoRedo"/> action. As with all subgizmo methods, transforms are given in local space respect to the gizmo's Node3D. Called for this plugin's active gizmos.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmoPlugin._CreateGizmo(Godot.Node3D)">
            <summary>
            <para>Override this method to return a custom <see cref="T:Godot.EditorNode3DGizmo"/> for the spatial nodes of your choice, return <c>null</c> for the rest of nodes. See also <see cref="M:Godot.EditorNode3DGizmoPlugin._HasGizmo(Godot.Node3D)"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmoPlugin._GetGizmoName">
            <summary>
            <para>Override this method to provide the name that will appear in the gizmo visibility menu.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmoPlugin._GetHandleName(Godot.EditorNode3DGizmo,System.Int32,System.Boolean)">
            <summary>
            <para>Override this method to provide gizmo's handle names. The <c>secondary</c> argument is <c>true</c> when the requested handle is secondary (see <see cref="M:Godot.EditorNode3DGizmo.AddHandles(Godot.Vector3[],Godot.Material,System.Int32[],System.Boolean,System.Boolean)"/> for more information). Called for this plugin's active gizmos.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmoPlugin._GetHandleValue(Godot.EditorNode3DGizmo,System.Int32,System.Boolean)">
            <summary>
            <para>Override this method to return the current value of a handle. This value will be requested at the start of an edit and used as the <c>restore</c> argument in <see cref="M:Godot.EditorNode3DGizmoPlugin._CommitHandle(Godot.EditorNode3DGizmo,System.Int32,System.Boolean,Godot.Variant,System.Boolean)"/>.</para>
            <para>The <c>secondary</c> argument is <c>true</c> when the requested handle is secondary (see <see cref="M:Godot.EditorNode3DGizmo.AddHandles(Godot.Vector3[],Godot.Material,System.Int32[],System.Boolean,System.Boolean)"/> for more information).</para>
            <para>Called for this plugin's active gizmos.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmoPlugin._GetPriority">
            <summary>
            <para>Override this method to set the gizmo's priority. Gizmos with higher priority will have precedence when processing inputs like handles or subgizmos selection.</para>
            <para>All built-in editor gizmos return a priority of <c>-1</c>. If not overridden, this method will return <c>0</c>, which means custom gizmos will automatically get higher priority than built-in gizmos.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmoPlugin._GetSubgizmoTransform(Godot.EditorNode3DGizmo,System.Int32)">
            <summary>
            <para>Override this method to return the current transform of a subgizmo. As with all subgizmo methods, the transform should be in local space respect to the gizmo's Node3D. This transform will be requested at the start of an edit and used in the <c>restore</c> argument in <see cref="M:Godot.EditorNode3DGizmoPlugin._CommitSubgizmos(Godot.EditorNode3DGizmo,System.Int32[],Godot.Collections.Array{Godot.Transform3D},System.Boolean)"/>. Called for this plugin's active gizmos.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmoPlugin._HasGizmo(Godot.Node3D)">
            <summary>
            <para>Override this method to define which Node3D nodes have a gizmo from this plugin. Whenever a <see cref="T:Godot.Node3D"/> node is added to a scene this method is called, if it returns <c>true</c> the node gets a generic <see cref="T:Godot.EditorNode3DGizmo"/> assigned and is added to this plugin's list of active gizmos.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmoPlugin._IsHandleHighlighted(Godot.EditorNode3DGizmo,System.Int32,System.Boolean)">
            <summary>
            <para>Override this method to return <c>true</c> whenever to given handle should be highlighted in the editor. The <c>secondary</c> argument is <c>true</c> when the requested handle is secondary (see <see cref="M:Godot.EditorNode3DGizmo.AddHandles(Godot.Vector3[],Godot.Material,System.Int32[],System.Boolean,System.Boolean)"/> for more information). Called for this plugin's active gizmos.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmoPlugin._IsSelectableWhenHidden">
            <summary>
            <para>Override this method to define whether Node3D with this gizmo should be selectable even when the gizmo is hidden.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmoPlugin._Redraw(Godot.EditorNode3DGizmo)">
            <summary>
            <para>Override this method to add all the gizmo elements whenever a gizmo update is requested. It's common to call <see cref="M:Godot.EditorNode3DGizmo.Clear"/> at the beginning of this method and then add visual elements depending on the node's properties.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmoPlugin._SetHandle(Godot.EditorNode3DGizmo,System.Int32,System.Boolean,Godot.Camera3D,Godot.Vector2)">
            <summary>
            <para>Override this method to update the node's properties when the user drags a gizmo handle (previously added with <see cref="M:Godot.EditorNode3DGizmo.AddHandles(Godot.Vector3[],Godot.Material,System.Int32[],System.Boolean,System.Boolean)"/>). The provided <c>screenPos</c> is the mouse position in screen coordinates and the <c>camera</c> can be used to convert it to raycasts.</para>
            <para>The <c>secondary</c> argument is <c>true</c> when the edited handle is secondary (see <see cref="M:Godot.EditorNode3DGizmo.AddHandles(Godot.Vector3[],Godot.Material,System.Int32[],System.Boolean,System.Boolean)"/> for more information).</para>
            <para>Called for this plugin's active gizmos.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmoPlugin._SetSubgizmoTransform(Godot.EditorNode3DGizmo,System.Int32,Godot.Transform3D)">
            <summary>
            <para>Override this method to update the node properties during subgizmo editing (see <see cref="M:Godot.EditorNode3DGizmoPlugin._SubgizmosIntersectRay(Godot.EditorNode3DGizmo,Godot.Camera3D,Godot.Vector2)"/> and <see cref="M:Godot.EditorNode3DGizmoPlugin._SubgizmosIntersectFrustum(Godot.EditorNode3DGizmo,Godot.Camera3D,Godot.Collections.Array{Godot.Plane})"/>). The <c>transform</c> is given in the Node3D's local coordinate system. Called for this plugin's active gizmos.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmoPlugin._SubgizmosIntersectFrustum(Godot.EditorNode3DGizmo,Godot.Camera3D,Godot.Collections.Array{Godot.Plane})">
            <summary>
            <para>Override this method to allow selecting subgizmos using mouse drag box selection. Given a <c>camera</c> and <c>frustumPlanes</c>, this method should return which subgizmos are contained within the frustums. The <c>frustumPlanes</c> argument consists of an <c>Array</c> with all the <c>Plane</c>s that make up the selection frustum. The returned value should contain a list of unique subgizmo identifiers, these identifiers can have any non-negative value and will be used in other virtual methods like <see cref="M:Godot.EditorNode3DGizmoPlugin._GetSubgizmoTransform(Godot.EditorNode3DGizmo,System.Int32)"/> or <see cref="M:Godot.EditorNode3DGizmoPlugin._CommitSubgizmos(Godot.EditorNode3DGizmo,System.Int32[],Godot.Collections.Array{Godot.Transform3D},System.Boolean)"/>. Called for this plugin's active gizmos.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmoPlugin._SubgizmosIntersectRay(Godot.EditorNode3DGizmo,Godot.Camera3D,Godot.Vector2)">
            <summary>
            <para>Override this method to allow selecting subgizmos using mouse clicks. Given a <c>camera</c> and a <c>screenPos</c> in screen coordinates, this method should return which subgizmo should be selected. The returned value should be a unique subgizmo identifier, which can have any non-negative value and will be used in other virtual methods like <see cref="M:Godot.EditorNode3DGizmoPlugin._GetSubgizmoTransform(Godot.EditorNode3DGizmo,System.Int32)"/> or <see cref="M:Godot.EditorNode3DGizmoPlugin._CommitSubgizmos(Godot.EditorNode3DGizmo,System.Int32[],Godot.Collections.Array{Godot.Transform3D},System.Boolean)"/>. Called for this plugin's active gizmos.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmoPlugin.CreateMaterial(System.String,Godot.Color,System.Boolean,System.Boolean,System.Boolean)">
            <summary>
            <para>Creates an unshaded material with its variants (selected and/or editable) and adds them to the internal material list. They can then be accessed with <see cref="M:Godot.EditorNode3DGizmoPlugin.GetMaterial(System.String,Godot.EditorNode3DGizmo)"/> and used in <see cref="M:Godot.EditorNode3DGizmo.AddMesh(Godot.Mesh,Godot.Material,System.Nullable{Godot.Transform3D},Godot.SkinReference)"/> and <see cref="M:Godot.EditorNode3DGizmo.AddLines(Godot.Vector3[],Godot.Material,System.Boolean,System.Nullable{Godot.Color})"/>. Should not be overridden.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmoPlugin.CreateIconMaterial(System.String,Godot.Texture2D,System.Boolean,System.Nullable{Godot.Color})">
            <summary>
            <para>Creates an icon material with its variants (selected and/or editable) and adds them to the internal material list. They can then be accessed with <see cref="M:Godot.EditorNode3DGizmoPlugin.GetMaterial(System.String,Godot.EditorNode3DGizmo)"/> and used in <see cref="M:Godot.EditorNode3DGizmo.AddUnscaledBillboard(Godot.Material,System.Single,System.Nullable{Godot.Color})"/>. Should not be overridden.</para>
            </summary>
            <param name="color">If the parameter is null, then the default value is <c>new Color(1, 1, 1, 1)</c>.</param>
        </member>
        <member name="M:Godot.EditorNode3DGizmoPlugin.CreateHandleMaterial(System.String,System.Boolean,Godot.Texture2D)">
            <summary>
            <para>Creates a handle material with its variants (selected and/or editable) and adds them to the internal material list. They can then be accessed with <see cref="M:Godot.EditorNode3DGizmoPlugin.GetMaterial(System.String,Godot.EditorNode3DGizmo)"/> and used in <see cref="M:Godot.EditorNode3DGizmo.AddHandles(Godot.Vector3[],Godot.Material,System.Int32[],System.Boolean,System.Boolean)"/>. Should not be overridden.</para>
            <para>You can optionally provide a texture to use instead of the default icon.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmoPlugin.AddMaterial(System.String,Godot.StandardMaterial3D)">
            <summary>
            <para>Adds a new material to the internal material list for the plugin. It can then be accessed with <see cref="M:Godot.EditorNode3DGizmoPlugin.GetMaterial(System.String,Godot.EditorNode3DGizmo)"/>. Should not be overridden.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorNode3DGizmoPlugin.GetMaterial(System.String,Godot.EditorNode3DGizmo)">
            <summary>
            <para>Gets material from the internal list of materials. If an <see cref="T:Godot.EditorNode3DGizmo"/> is provided, it will try to get the corresponding variant (selected and/or editable).</para>
            </summary>
        </member>
        <member name="T:Godot.EditorPaths">
            <summary>
            <para>This editor-only singleton returns OS-specific paths to various data folders and files. It can be used in editor plugins to ensure files are saved in the correct location on each operating system.</para>
            <para><b>Note:</b> This singleton is not accessible in exported projects. Attempting to access it in an exported project will result in a script error as the singleton won't be declared. To prevent script errors in exported projects, use <see cref="M:Godot.Engine.HasSingleton(Godot.StringName)"/> to check whether the singleton is available before using it.</para>
            <para><b>Note:</b> On the Linux/BSD platform, Godot complies with the <a href="https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html">XDG Base Directory Specification</a>. You can override environment variables following the specification to change the editor and project data paths.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPaths.GetDataDir">
            <summary>
            <para>Returns the absolute path to the user's data folder. This folder should be used for <i>persistent</i> user data files such as installed export templates.</para>
            <para><b>Default paths per platform:</b></para>
            <para><code>
            - Windows: %APPDATA%\Godot\                    (same as `get_config_dir()`)
            - macOS: ~/Library/Application Support/Godot/  (same as `get_config_dir()`)
            - Linux: ~/.local/share/godot/
            </code></para>
            </summary>
        </member>
        <member name="M:Godot.EditorPaths.GetConfigDir">
            <summary>
            <para>Returns the absolute path to the user's configuration folder. This folder should be used for <i>persistent</i> user configuration files.</para>
            <para><b>Default paths per platform:</b></para>
            <para><code>
            - Windows: %APPDATA%\Godot\                    (same as `get_data_dir()`)
            - macOS: ~/Library/Application Support/Godot/  (same as `get_data_dir()`)
            - Linux: ~/.config/godot/
            </code></para>
            </summary>
        </member>
        <member name="M:Godot.EditorPaths.GetCacheDir">
            <summary>
            <para>Returns the absolute path to the user's cache folder. This folder should be used for temporary data that can be removed safely whenever the editor is closed (such as generated resource thumbnails).</para>
            <para><b>Default paths per platform:</b></para>
            <para><code>
            - Windows: %LOCALAPPDATA%\Godot\
            - macOS: ~/Library/Caches/Godot/
            - Linux: ~/.cache/godot/
            </code></para>
            </summary>
        </member>
        <member name="M:Godot.EditorPaths.IsSelfContained">
            <summary>
            <para>Returns <c>true</c> if the editor is marked as self-contained, <c>false</c> otherwise. When self-contained mode is enabled, user configuration, data and cache files are saved in an <c>editor_data/</c> folder next to the editor binary. This makes portable usage easier and ensures the Godot editor minimizes file writes outside its own folder. Self-contained mode is not available for exported projects.</para>
            <para>Self-contained mode can be enabled by creating a file named <c>._sc_</c> or <c>_sc_</c> in the same folder as the editor binary while the editor is not running. See also <see cref="M:Godot.EditorPaths.GetSelfContainedFile"/>.</para>
            <para><b>Note:</b> The Steam release of Godot uses self-contained mode by default.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPaths.GetSelfContainedFile">
            <summary>
            <para>Returns the absolute path to the self-contained file that makes the current Godot editor instance be considered as self-contained. Returns an empty string if the current Godot editor instance isn't self-contained. See also <see cref="M:Godot.EditorPaths.IsSelfContained"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPaths.GetProjectSettingsDir">
            <summary>
            <para>Returns the project-specific editor settings path. Projects all have a unique subdirectory inside the settings path where project-specific editor settings are saved.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorPlugin">
            <summary>
            <para>Plugins are used by the editor to extend functionality. The most common types of plugins are those which edit a given node or resource type, import plugins and export plugins. See also <see cref="T:Godot.EditorScript"/> to add functions to the editor.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorPlugin.CustomControlContainer.Toolbar">
            <summary>
            <para>Main editor toolbar, next to play buttons.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorPlugin.CustomControlContainer.SpatialEditorMenu">
            <summary>
            <para>The toolbar that appears when 3D editor is active.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorPlugin.CustomControlContainer.SpatialEditorSideLeft">
            <summary>
            <para>Left sidebar of the 3D editor.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorPlugin.CustomControlContainer.SpatialEditorSideRight">
            <summary>
            <para>Right sidebar of the 3D editor.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorPlugin.CustomControlContainer.SpatialEditorBottom">
            <summary>
            <para>Bottom panel of the 3D editor.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorPlugin.CustomControlContainer.CanvasEditorMenu">
            <summary>
            <para>The toolbar that appears when 2D editor is active.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorPlugin.CustomControlContainer.CanvasEditorSideLeft">
            <summary>
            <para>Left sidebar of the 2D editor.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorPlugin.CustomControlContainer.CanvasEditorSideRight">
            <summary>
            <para>Right sidebar of the 2D editor.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorPlugin.CustomControlContainer.CanvasEditorBottom">
            <summary>
            <para>Bottom panel of the 2D editor.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorPlugin.CustomControlContainer.InspectorBottom">
            <summary>
            <para>Bottom section of the inspector.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorPlugin.CustomControlContainer.ProjectSettingTabLeft">
            <summary>
            <para>Tab of Project Settings dialog, to the left of other tabs.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorPlugin.CustomControlContainer.ProjectSettingTabRight">
            <summary>
            <para>Tab of Project Settings dialog, to the right of other tabs.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorPlugin.DockSlot.LeftUl">
            <summary>
            <para>Dock slot, left side, upper-left (empty in default layout).</para>
            </summary>
        </member>
        <member name="F:Godot.EditorPlugin.DockSlot.LeftBl">
            <summary>
            <para>Dock slot, left side, bottom-left (empty in default layout).</para>
            </summary>
        </member>
        <member name="F:Godot.EditorPlugin.DockSlot.LeftUr">
            <summary>
            <para>Dock slot, left side, upper-right (in default layout includes Scene and Import docks).</para>
            </summary>
        </member>
        <member name="F:Godot.EditorPlugin.DockSlot.LeftBr">
            <summary>
            <para>Dock slot, left side, bottom-right (in default layout includes FileSystem dock).</para>
            </summary>
        </member>
        <member name="F:Godot.EditorPlugin.DockSlot.RightUl">
            <summary>
            <para>Dock slot, right side, upper-left (empty in default layout).</para>
            </summary>
        </member>
        <member name="F:Godot.EditorPlugin.DockSlot.RightBl">
            <summary>
            <para>Dock slot, right side, bottom-left (empty in default layout).</para>
            </summary>
        </member>
        <member name="F:Godot.EditorPlugin.DockSlot.RightUr">
            <summary>
            <para>Dock slot, right side, upper-right (in default layout includes Inspector, Node and History docks).</para>
            </summary>
        </member>
        <member name="F:Godot.EditorPlugin.DockSlot.RightBr">
            <summary>
            <para>Dock slot, right side, bottom-right (empty in default layout).</para>
            </summary>
        </member>
        <member name="F:Godot.EditorPlugin.DockSlot.Max">
            <summary>
            <para>Represents the size of the <see cref="T:Godot.EditorPlugin.DockSlot"/> enum.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorPlugin.AfterGuiInput.Pass">
            <summary>
            <para>Forwards the <see cref="T:Godot.InputEvent"/> to other EditorPlugins.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorPlugin.AfterGuiInput.Stop">
            <summary>
            <para>Prevents the <see cref="T:Godot.InputEvent"/> from reaching other Editor classes.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorPlugin.AfterGuiInput.Custom">
            <summary>
            <para>Pass the <see cref="T:Godot.InputEvent"/> to other editor plugins except the main <see cref="T:Godot.Node3D"/> one. This can be used to prevent node selection changes and work with sub-gizmos instead.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin._ApplyChanges">
            <summary>
            <para>This method is called when the editor is about to save the project, switch to another tab, etc. It asks the plugin to apply any pending state changes to ensure consistency.</para>
            <para>This is used, for example, in shader editors to let the plugin know that it must apply the shader code being written by the user to the object.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin._Build">
            <summary>
            <para>This method is called when the editor is about to run the project. The plugin can then perform required operations before the project runs.</para>
            <para>This method must return a boolean. If this method returns <c>false</c>, the project will not run. The run is aborted immediately, so this also prevents all other plugins' <see cref="M:Godot.EditorPlugin._Build"/> methods from running.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin._Clear">
            <summary>
            <para>Clear all the state and reset the object being edited to zero. This ensures your plugin does not keep editing a currently existing node, or a node from the wrong scene.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin._DisablePlugin">
            <summary>
            <para>Called by the engine when the user disables the <see cref="T:Godot.EditorPlugin"/> in the Plugin tab of the project settings window.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin._Edit(Godot.GodotObject)">
            <summary>
            <para>This function is used for plugins that edit specific object types (nodes or resources). It requests the editor to edit the given object.</para>
            <para><c>object</c> can be <c>null</c> if the plugin was editing an object, but there is no longer any selected object handled by this plugin. It can be used to cleanup editing state.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin._EnablePlugin">
            <summary>
            <para>Called by the engine when the user enables the <see cref="T:Godot.EditorPlugin"/> in the Plugin tab of the project settings window.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin._Forward3DDrawOverViewport(Godot.Control)">
            <summary>
            <para>Called by the engine when the 3D editor's viewport is updated. Use the <c>overlay</c> <see cref="T:Godot.Control"/> for drawing. You can update the viewport manually by calling <see cref="M:Godot.EditorPlugin.UpdateOverlays"/>.</para>
            <para><code>
            public override void _Forward3DDrawOverViewport(Control viewportControl)
            {
                // Draw a circle at cursor position.
                viewportControl.DrawCircle(viewportControl.GetLocalMousePosition(), 64, Colors.White);
            }
            
            public override EditorPlugin.AfterGuiInput _Forward3DGuiInput(Camera3D viewportCamera, InputEvent @event)
            {
                if (@event is InputEventMouseMotion)
                {
                    // Redraw viewport when cursor is moved.
                    UpdateOverlays();
                    return EditorPlugin.AfterGuiInput.Stop;
                }
                return EditorPlugin.AfterGuiInput.Pass;
            }
            </code></para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin._Forward3DForceDrawOverViewport(Godot.Control)">
            <summary>
            <para>This method is the same as <see cref="M:Godot.EditorPlugin._Forward3DDrawOverViewport(Godot.Control)"/>, except it draws on top of everything. Useful when you need an extra layer that shows over anything else.</para>
            <para>You need to enable calling of this method by using <see cref="M:Godot.EditorPlugin.SetForceDrawOverForwardingEnabled"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin._Forward3DGuiInput(Godot.Camera3D,Godot.InputEvent)">
            <summary>
            <para>Called when there is a root node in the current edited scene, <see cref="M:Godot.EditorPlugin._Handles(Godot.GodotObject)"/> is implemented, and an <see cref="T:Godot.InputEvent"/> happens in the 3D viewport. The return value decides whether the <see cref="T:Godot.InputEvent"/> is consumed or forwarded to other <see cref="T:Godot.EditorPlugin"/>s. See <see cref="T:Godot.EditorPlugin.AfterGuiInput"/> for options.</para>
            <para><b>Example:</b></para>
            <para><code>
            // Prevents the InputEvent from reaching other Editor classes.
            public override EditorPlugin.AfterGuiInput _Forward3DGuiInput(Camera3D camera, InputEvent @event)
            {
                return EditorPlugin.AfterGuiInput.Stop;
            }
            </code></para>
            <para>Must <c>return EditorPlugin.AFTER_GUI_INPUT_PASS</c> in order to forward the <see cref="T:Godot.InputEvent"/> to other Editor classes.</para>
            <para><b>Example:</b></para>
            <para><code>
            // Consumes InputEventMouseMotion and forwards other InputEvent types.
            public override EditorPlugin.AfterGuiInput _Forward3DGuiInput(Camera3D camera, InputEvent @event)
            {
                return @event is InputEventMouseMotion ? EditorPlugin.AfterGuiInput.Stop : EditorPlugin.AfterGuiInput.Pass;
            }
            </code></para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin._ForwardCanvasDrawOverViewport(Godot.Control)">
            <summary>
            <para>Called by the engine when the 2D editor's viewport is updated. Use the <c>overlay</c> <see cref="T:Godot.Control"/> for drawing. You can update the viewport manually by calling <see cref="M:Godot.EditorPlugin.UpdateOverlays"/>.</para>
            <para><code>
            public override void _ForwardCanvasDrawOverViewport(Control viewportControl)
            {
                // Draw a circle at cursor position.
                viewportControl.DrawCircle(viewportControl.GetLocalMousePosition(), 64, Colors.White);
            }
            
            public override bool _ForwardCanvasGuiInput(InputEvent @event)
            {
                if (@event is InputEventMouseMotion)
                {
                    // Redraw viewport when cursor is moved.
                    UpdateOverlays();
                    return true;
                }
                return false;
            }
            </code></para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin._ForwardCanvasForceDrawOverViewport(Godot.Control)">
            <summary>
            <para>This method is the same as <see cref="M:Godot.EditorPlugin._ForwardCanvasDrawOverViewport(Godot.Control)"/>, except it draws on top of everything. Useful when you need an extra layer that shows over anything else.</para>
            <para>You need to enable calling of this method by using <see cref="M:Godot.EditorPlugin.SetForceDrawOverForwardingEnabled"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin._ForwardCanvasGuiInput(Godot.InputEvent)">
            <summary>
            <para>Called when there is a root node in the current edited scene, <see cref="M:Godot.EditorPlugin._Handles(Godot.GodotObject)"/> is implemented and an <see cref="T:Godot.InputEvent"/> happens in the 2D viewport. Intercepts the <see cref="T:Godot.InputEvent"/>, if <c>return true</c> <see cref="T:Godot.EditorPlugin"/> consumes the <c>event</c>, otherwise forwards <c>event</c> to other Editor classes.</para>
            <para><b>Example:</b></para>
            <para><code>
            // Prevents the InputEvent from reaching other Editor classes.
            public override bool ForwardCanvasGuiInput(InputEvent @event)
            {
                return true;
            }
            </code></para>
            <para>Must <c>return false</c> in order to forward the <see cref="T:Godot.InputEvent"/> to other Editor classes.</para>
            <para><b>Example:</b></para>
            <para><code>
            // Consumes InputEventMouseMotion and forwards other InputEvent types.
            public override bool _ForwardCanvasGuiInput(InputEvent @event)
            {
                if (@event is InputEventMouseMotion)
                {
                    return true;
                }
                return false;
            }
            </code></para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin._GetBreakpoints">
            <summary>
            <para>This is for editors that edit script-based objects. You can return a list of breakpoints in the format (<c>script:line</c>), for example: <c>res://path_to_script.gd:25</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin._GetPluginIcon">
            <summary>
            <para>Override this method in your plugin to return a <see cref="T:Godot.Texture2D"/> in order to give it an icon.</para>
            <para>For main screen plugins, this appears at the top of the screen, to the right of the "2D", "3D", "Script", and "AssetLib" buttons.</para>
            <para>Ideally, the plugin icon should be white with a transparent background and 16x16 pixels in size.</para>
            <para><code>
            public override Texture2D _GetPluginIcon()
            {
                // You can use a custom icon:
                return ResourceLoader.Load&lt;Texture2D&gt;("res://addons/my_plugin/my_plugin_icon.svg");
                // Or use a built-in icon:
                return GetEditorInterface().GetBaseControl().GetThemeIcon("Node", "EditorIcons");
            }
            </code></para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin._GetPluginName">
            <summary>
            <para>Override this method in your plugin to provide the name of the plugin when displayed in the Godot editor.</para>
            <para>For main screen plugins, this appears at the top of the screen, to the right of the "2D", "3D", "Script", and "AssetLib" buttons.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin._GetState">
            <summary>
            <para>Override this method to provide a state data you want to be saved, like view position, grid settings, folding, etc. This is used when saving the scene (so state is kept when opening it again) and for switching tabs (so state can be restored when the tab returns). This data is automatically saved for each scene in an <c>editstate</c> file in the editor metadata folder. If you want to store global (scene-independent) editor data for your plugin, you can use <see cref="M:Godot.EditorPlugin._GetWindowLayout(Godot.ConfigFile)"/> instead.</para>
            <para>Use <see cref="M:Godot.EditorPlugin._SetState(Godot.Collections.Dictionary)"/> to restore your saved state.</para>
            <para><b>Note:</b> This method should not be used to save important settings that should persist with the project.</para>
            <para><b>Note:</b> You must implement <see cref="M:Godot.EditorPlugin._GetPluginName"/> for the state to be stored and restored correctly.</para>
            <para><code>
            func _get_state():
                var state = {"zoom": zoom, "preferred_color": my_color}
                return state
            </code></para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin._GetWindowLayout(Godot.ConfigFile)">
            <summary>
            <para>Override this method to provide the GUI layout of the plugin or any other data you want to be stored. This is used to save the project's editor layout when <see cref="M:Godot.EditorPlugin.QueueSaveLayout"/> is called or the editor layout was changed (for example changing the position of a dock). The data is stored in the <c>editor_layout.cfg</c> file in the editor metadata directory.</para>
            <para>Use <see cref="M:Godot.EditorPlugin._SetWindowLayout(Godot.ConfigFile)"/> to restore your saved layout.</para>
            <para><code>
            func _get_window_layout(configuration):
                configuration.set_value("MyPlugin", "window_position", $Window.position)
                configuration.set_value("MyPlugin", "icon_color", $Icon.modulate)
            </code></para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin._Handles(Godot.GodotObject)">
            <summary>
            <para>Implement this function if your plugin edits a specific type of object (Resource or Node). If you return <c>true</c>, then you will get the functions <see cref="M:Godot.EditorPlugin._Edit(Godot.GodotObject)"/> and <see cref="M:Godot.EditorPlugin._MakeVisible(System.Boolean)"/> called when the editor requests them. If you have declared the methods <see cref="M:Godot.EditorPlugin._ForwardCanvasGuiInput(Godot.InputEvent)"/> and <see cref="M:Godot.EditorPlugin._Forward3DGuiInput(Godot.Camera3D,Godot.InputEvent)"/> these will be called too.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin._HasMainScreen">
            <summary>
            <para>Returns <c>true</c> if this is a main screen editor plugin (it goes in the workspace selector together with <b>2D</b>, <b>3D</b>, <b>Script</b> and <b>AssetLib</b>).</para>
            <para>When the plugin's workspace is selected, other main screen plugins will be hidden, but your plugin will not appear automatically. It needs to be added as a child of <see cref="M:Godot.EditorInterface.GetBaseControl"/> and made visible inside <see cref="M:Godot.EditorPlugin._MakeVisible(System.Boolean)"/>.</para>
            <para>Use <see cref="M:Godot.EditorPlugin._GetPluginName"/> and <see cref="M:Godot.EditorPlugin._GetPluginIcon"/> to customize the plugin button's appearance.</para>
            <para><code>
            var plugin_control
            
            func _enter_tree():
                plugin_control = preload("my_plugin_control.tscn").instantiate()
                get_editor_interface().get_editor_main_screen().add_child(plugin_control)
                plugin_control.hide()
            
            func _has_main_screen():
                return true
            
            func _make_visible(visible):
                plugin_control.visible = visible
            
            func _get_plugin_name():
                return "My Super Cool Plugin 3000"
            
            func _get_plugin_icon():
                return get_editor_interface().get_base_control().get_theme_icon("Node", "EditorIcons")
            </code></para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin._MakeVisible(System.Boolean)">
            <summary>
            <para>This function will be called when the editor is requested to become visible. It is used for plugins that edit a specific object type.</para>
            <para>Remember that you have to manage the visibility of all your editor controls manually.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin._SaveExternalData">
            <summary>
            <para>This method is called after the editor saves the project or when it's closed. It asks the plugin to save edited external scenes/resources.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin._SetState(Godot.Collections.Dictionary)">
            <summary>
            <para>Restore the state saved by <see cref="M:Godot.EditorPlugin._GetState"/>. This method is called when the current scene tab is changed in the editor.</para>
            <para><b>Note:</b> Your plugin must implement <see cref="M:Godot.EditorPlugin._GetPluginName"/>, otherwise it will not be recognized and this method will not be called.</para>
            <para><code>
            func _set_state(data):
                zoom = data.get("zoom", 1.0)
                preferred_color = data.get("my_color", Color.WHITE)
            </code></para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin._SetWindowLayout(Godot.ConfigFile)">
            <summary>
            <para>Restore the plugin GUI layout and data saved by <see cref="M:Godot.EditorPlugin._GetWindowLayout(Godot.ConfigFile)"/>. This method is called for every plugin on editor startup. Use the provided <c>configuration</c> file to read your saved data.</para>
            <para><code>
            func _set_window_layout(configuration):
                $Window.position = configuration.get_value("MyPlugin", "window_position", Vector2())
                $Icon.modulate = configuration.get_value("MyPlugin", "icon_color", Color.WHITE)
            </code></para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.AddControlToContainer(Godot.EditorPlugin.CustomControlContainer,Godot.Control)">
            <summary>
            <para>Adds a custom control to a container (see <see cref="T:Godot.EditorPlugin.CustomControlContainer"/>). There are many locations where custom controls can be added in the editor UI.</para>
            <para>Please remember that you have to manage the visibility of your custom controls yourself (and likely hide it after adding it).</para>
            <para>When your plugin is deactivated, make sure to remove your custom control with <see cref="M:Godot.EditorPlugin.RemoveControlFromContainer(Godot.EditorPlugin.CustomControlContainer,Godot.Control)"/> and free it with <see cref="M:Godot.Node.QueueFree"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.AddControlToBottomPanel(Godot.Control,System.String)">
            <summary>
            <para>Adds a control to the bottom panel (together with Output, Debug, Animation, etc). Returns a reference to the button added. It's up to you to hide/show the button when needed. When your plugin is deactivated, make sure to remove your custom control with <see cref="M:Godot.EditorPlugin.RemoveControlFromBottomPanel(Godot.Control)"/> and free it with <see cref="M:Godot.Node.QueueFree"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.AddControlToDock(Godot.EditorPlugin.DockSlot,Godot.Control)">
            <summary>
            <para>Adds the control to a specific dock slot (see <see cref="T:Godot.EditorPlugin.DockSlot"/> for options).</para>
            <para>If the dock is repositioned and as long as the plugin is active, the editor will save the dock position on further sessions.</para>
            <para>When your plugin is deactivated, make sure to remove your custom control with <see cref="M:Godot.EditorPlugin.RemoveControlFromDocks(Godot.Control)"/> and free it with <see cref="M:Godot.Node.QueueFree"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.RemoveControlFromDocks(Godot.Control)">
            <summary>
            <para>Removes the control from the dock. You have to manually <see cref="M:Godot.Node.QueueFree"/> the control.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.RemoveControlFromBottomPanel(Godot.Control)">
            <summary>
            <para>Removes the control from the bottom panel. You have to manually <see cref="M:Godot.Node.QueueFree"/> the control.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.RemoveControlFromContainer(Godot.EditorPlugin.CustomControlContainer,Godot.Control)">
            <summary>
            <para>Removes the control from the specified container. You have to manually <see cref="M:Godot.Node.QueueFree"/> the control.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.AddToolMenuItem(System.String,Godot.Callable)">
            <summary>
            <para>Adds a custom menu item to <b>Project &gt; Tools</b> named <c>name</c>. When clicked, the provided <c>callable</c> will be called.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.AddToolSubmenuItem(System.String,Godot.PopupMenu)">
            <summary>
            <para>Adds a custom <see cref="T:Godot.PopupMenu"/> submenu under <b>Project &gt; Tools &gt;</b> <c>name</c>. Use <c>remove_tool_menu_item(name)</c> on plugin clean up to remove the menu.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.RemoveToolMenuItem(System.String)">
            <summary>
            <para>Removes a menu <c>name</c> from <b>Project &gt; Tools</b>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.GetExportAsMenu">
            <summary>
            <para>Returns the <see cref="T:Godot.PopupMenu"/> under <b>Scene &gt; Export As...</b>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.AddCustomType(System.String,System.String,Godot.Script,Godot.Texture2D)">
            <summary>
            <para>Adds a custom type, which will appear in the list of nodes or resources. An icon can be optionally passed.</para>
            <para>When a given node or resource is selected, the base type will be instantiated (e.g. "Node3D", "Control", "Resource"), then the script will be loaded and set to this object.</para>
            <para><b>Note:</b> The base type is the base engine class which this type's class hierarchy inherits, not any custom type parent classes.</para>
            <para>You can use the virtual method <see cref="M:Godot.EditorPlugin._Handles(Godot.GodotObject)"/> to check if your custom object is being edited by checking the script or using the <c>is</c> keyword.</para>
            <para>During run-time, this will be a simple object with a script so this function does not need to be called then.</para>
            <para><b>Note:</b> Custom types added this way are not true classes. They are just a helper to create a node with specific script.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.RemoveCustomType(System.String)">
            <summary>
            <para>Removes a custom type added by <see cref="M:Godot.EditorPlugin.AddCustomType(System.String,System.String,Godot.Script,Godot.Texture2D)"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.AddAutoloadSingleton(System.String,System.String)">
            <summary>
            <para>Adds a script at <c>path</c> to the Autoload list as <c>name</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.RemoveAutoloadSingleton(System.String)">
            <summary>
            <para>Removes an Autoload <c>name</c> from the list.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.UpdateOverlays">
            <summary>
            <para>Updates the overlays of the 2D and 3D editor viewport. Causes methods <see cref="M:Godot.EditorPlugin._ForwardCanvasDrawOverViewport(Godot.Control)"/>, <see cref="M:Godot.EditorPlugin._ForwardCanvasForceDrawOverViewport(Godot.Control)"/>, <see cref="M:Godot.EditorPlugin._Forward3DDrawOverViewport(Godot.Control)"/> and <see cref="M:Godot.EditorPlugin._Forward3DForceDrawOverViewport(Godot.Control)"/> to be called.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.MakeBottomPanelItemVisible(Godot.Control)">
            <summary>
            <para>Makes a specific item in the bottom panel visible.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.HideBottomPanel">
            <summary>
            <para>Minimizes the bottom panel.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.GetUndoRedo">
            <summary>
            <para>Gets the undo/redo object. Most actions in the editor can be undoable, so use this object to make sure this happens when it's worth it.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.AddUndoRedoInspectorHookCallback(Godot.Callable)">
            <summary>
            <para>Hooks a callback into the undo/redo action creation when a property is modified in the inspector. This allows, for example, to save other properties that may be lost when a given property is modified.</para>
            <para>The callback should have 4 arguments: <see cref="T:Godot.GodotObject"/> <c>undo_redo</c>, <see cref="T:Godot.GodotObject"/> <c>modified_object</c>, <see cref="T:System.String"/> <c>property</c> and <see cref="T:Godot.Variant"/> <c>new_value</c>. They are, respectively, the <see cref="T:Godot.UndoRedo"/> object used by the inspector, the currently modified object, the name of the modified property and the new value the property is about to take.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.RemoveUndoRedoInspectorHookCallback(Godot.Callable)">
            <summary>
            <para>Removes a callback previously added by <see cref="M:Godot.EditorPlugin.AddUndoRedoInspectorHookCallback(Godot.Callable)"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.QueueSaveLayout">
            <summary>
            <para>Queue save the project's editor layout.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.AddTranslationParserPlugin(Godot.EditorTranslationParserPlugin)">
            <summary>
            <para>Registers a custom translation parser plugin for extracting translatable strings from custom files.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.RemoveTranslationParserPlugin(Godot.EditorTranslationParserPlugin)">
            <summary>
            <para>Removes a custom translation parser plugin registered by <see cref="M:Godot.EditorPlugin.AddTranslationParserPlugin(Godot.EditorTranslationParserPlugin)"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.AddImportPlugin(Godot.EditorImportPlugin,System.Boolean)">
            <summary>
            <para>Registers a new <see cref="T:Godot.EditorImportPlugin"/>. Import plugins are used to import custom and unsupported assets as a custom <see cref="T:Godot.Resource"/> type.</para>
            <para>If <c>firstPriority</c> is <c>true</c>, the new import plugin is inserted first in the list and takes precedence over pre-existing plugins.</para>
            <para><b>Note:</b> If you want to import custom 3D asset formats use <see cref="M:Godot.EditorPlugin.AddSceneFormatImporterPlugin(Godot.EditorSceneFormatImporter,System.Boolean)"/> instead.</para>
            <para>See <see cref="M:Godot.EditorPlugin.AddInspectorPlugin(Godot.EditorInspectorPlugin)"/> for an example of how to register a plugin.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.RemoveImportPlugin(Godot.EditorImportPlugin)">
            <summary>
            <para>Removes an import plugin registered by <see cref="M:Godot.EditorPlugin.AddImportPlugin(Godot.EditorImportPlugin,System.Boolean)"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.AddSceneFormatImporterPlugin(Godot.EditorSceneFormatImporter,System.Boolean)">
            <summary>
            <para>Registers a new <see cref="T:Godot.EditorSceneFormatImporter"/>. Scene importers are used to import custom 3D asset formats as scenes.</para>
            <para>If <c>firstPriority</c> is <c>true</c>, the new import plugin is inserted first in the list and takes precedence over pre-existing plugins.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.RemoveSceneFormatImporterPlugin(Godot.EditorSceneFormatImporter)">
            <summary>
            <para>Removes a scene format importer registered by <see cref="M:Godot.EditorPlugin.AddSceneFormatImporterPlugin(Godot.EditorSceneFormatImporter,System.Boolean)"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.AddScenePostImportPlugin(Godot.EditorScenePostImportPlugin,System.Boolean)">
            <summary>
            <para>Add a <see cref="T:Godot.EditorScenePostImportPlugin"/>. These plugins allow customizing the import process of 3D assets by adding new options to the import dialogs.</para>
            <para>If <c>firstPriority</c> is <c>true</c>, the new import plugin is inserted first in the list and takes precedence over pre-existing plugins.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.RemoveScenePostImportPlugin(Godot.EditorScenePostImportPlugin)">
            <summary>
            <para>Remove the <see cref="T:Godot.EditorScenePostImportPlugin"/>, added with <see cref="M:Godot.EditorPlugin.AddScenePostImportPlugin(Godot.EditorScenePostImportPlugin,System.Boolean)"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.AddExportPlugin(Godot.EditorExportPlugin)">
            <summary>
            <para>Registers a new <see cref="T:Godot.EditorExportPlugin"/>. Export plugins are used to perform tasks when the project is being exported.</para>
            <para>See <see cref="M:Godot.EditorPlugin.AddInspectorPlugin(Godot.EditorInspectorPlugin)"/> for an example of how to register a plugin.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.RemoveExportPlugin(Godot.EditorExportPlugin)">
            <summary>
            <para>Removes an export plugin registered by <see cref="M:Godot.EditorPlugin.AddExportPlugin(Godot.EditorExportPlugin)"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.AddNode3DGizmoPlugin(Godot.EditorNode3DGizmoPlugin)">
            <summary>
            <para>Registers a new <see cref="T:Godot.EditorNode3DGizmoPlugin"/>. Gizmo plugins are used to add custom gizmos to the 3D preview viewport for a <see cref="T:Godot.Node3D"/>.</para>
            <para>See <see cref="M:Godot.EditorPlugin.AddInspectorPlugin(Godot.EditorInspectorPlugin)"/> for an example of how to register a plugin.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.RemoveNode3DGizmoPlugin(Godot.EditorNode3DGizmoPlugin)">
            <summary>
            <para>Removes a gizmo plugin registered by <see cref="M:Godot.EditorPlugin.AddNode3DGizmoPlugin(Godot.EditorNode3DGizmoPlugin)"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.AddInspectorPlugin(Godot.EditorInspectorPlugin)">
            <summary>
            <para>Registers a new <see cref="T:Godot.EditorInspectorPlugin"/>. Inspector plugins are used to extend <see cref="T:Godot.EditorInspector"/> and provide custom configuration tools for your object's properties.</para>
            <para><b>Note:</b> Always use <see cref="M:Godot.EditorPlugin.RemoveInspectorPlugin(Godot.EditorInspectorPlugin)"/> to remove the registered <see cref="T:Godot.EditorInspectorPlugin"/> when your <see cref="T:Godot.EditorPlugin"/> is disabled to prevent leaks and an unexpected behavior.</para>
            <para></para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.RemoveInspectorPlugin(Godot.EditorInspectorPlugin)">
            <summary>
            <para>Removes an inspector plugin registered by <see cref="M:Godot.EditorPlugin.AddImportPlugin(Godot.EditorImportPlugin,System.Boolean)"/></para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.AddResourceConversionPlugin(Godot.EditorResourceConversionPlugin)">
            <summary>
            <para>Registers a new <see cref="T:Godot.EditorResourceConversionPlugin"/>. Resource conversion plugins are used to add custom resource converters to the editor inspector.</para>
            <para>See <see cref="T:Godot.EditorResourceConversionPlugin"/> for an example of how to create a resource conversion plugin.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.RemoveResourceConversionPlugin(Godot.EditorResourceConversionPlugin)">
            <summary>
            <para>Removes a resource conversion plugin registered by <see cref="M:Godot.EditorPlugin.AddResourceConversionPlugin(Godot.EditorResourceConversionPlugin)"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.SetInputEventForwardingAlwaysEnabled">
            <summary>
            <para>Use this method if you always want to receive inputs from 3D view screen inside <see cref="M:Godot.EditorPlugin._Forward3DGuiInput(Godot.Camera3D,Godot.InputEvent)"/>. It might be especially usable if your plugin will want to use raycast in the scene.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.SetForceDrawOverForwardingEnabled">
            <summary>
            <para>Enables calling of <see cref="M:Godot.EditorPlugin._ForwardCanvasForceDrawOverViewport(Godot.Control)"/> for the 2D editor and <see cref="M:Godot.EditorPlugin._Forward3DForceDrawOverViewport(Godot.Control)"/> for the 3D editor when their viewports are updated. You need to call this method only once and it will work permanently for this plugin.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.GetEditorInterface">
            <summary>
            <para>Returns the <see cref="T:Godot.EditorInterface"/> object that gives you control over Godot editor's window and its functionalities.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.GetScriptCreateDialog">
            <summary>
            <para>Gets the Editor's dialog used for making scripts.</para>
            <para><b>Note:</b> Users can configure it before use.</para>
            <para><b>Warning:</b> Removing and freeing this node will render a part of the editor useless and may cause a crash.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.AddDebuggerPlugin(Godot.EditorDebuggerPlugin)">
            <summary>
            <para>Adds a <see cref="T:Godot.Script"/> as debugger plugin to the Debugger. The script must extend <see cref="T:Godot.EditorDebuggerPlugin"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorPlugin.RemoveDebuggerPlugin(Godot.EditorDebuggerPlugin)">
            <summary>
            <para>Removes the debugger plugin with given script from the Debugger.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorPlugin.SceneChangedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorPlugin.SceneChanged"/> event of a <see cref="T:Godot.EditorPlugin"/> class.
            </summary>
        </member>
        <member name="E:Godot.EditorPlugin.SceneChanged">
            <summary>
            <para>Emitted when the scene is changed in the editor. The argument will return the root node of the scene that has just become active. If this scene is new and empty, the argument will be <c>null</c>.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorPlugin.SceneClosedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorPlugin.SceneClosed"/> event of a <see cref="T:Godot.EditorPlugin"/> class.
            </summary>
        </member>
        <member name="E:Godot.EditorPlugin.SceneClosed">
            <summary>
            <para>Emitted when user closes a scene. The argument is file path to a closed scene.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorPlugin.MainScreenChangedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorPlugin.MainScreenChanged"/> event of a <see cref="T:Godot.EditorPlugin"/> class.
            </summary>
        </member>
        <member name="E:Godot.EditorPlugin.MainScreenChanged">
            <summary>
            <para>Emitted when user changes the workspace (<b>2D</b>, <b>3D</b>, <b>Script</b>, <b>AssetLib</b>). Also works with custom screens defined by plugins.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorPlugin.ResourceSavedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorPlugin.ResourceSaved"/> event of a <see cref="T:Godot.EditorPlugin"/> class.
            </summary>
        </member>
        <member name="E:Godot.EditorPlugin.ResourceSaved">
            <summary>
            <para>Emitted when the given <c>resource</c> was saved on disc.</para>
            </summary>
        </member>
        <member name="E:Godot.EditorPlugin.ProjectSettingsChanged">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorPlugin.ProjectSettingsChanged"/> event of a <see cref="T:Godot.EditorPlugin"/> class.
            </summary>
            <summary>
            <para>Emitted when any project setting has changed.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorProperty">
            <summary>
            <para>This control allows property editing for one or multiple properties into <see cref="T:Godot.EditorInspector"/>. It is added via <see cref="T:Godot.EditorInspectorPlugin"/>.</para>
            </summary>
        </member>
        <member name="P:Godot.EditorProperty.Label">
            <summary>
            <para>Set this property to change the label (if you want to show one).</para>
            </summary>
        </member>
        <member name="P:Godot.EditorProperty.ReadOnly">
            <summary>
            <para>Used by the inspector, set to <c>true</c> when the property is read-only.</para>
            </summary>
        </member>
        <member name="P:Godot.EditorProperty.Checkable">
            <summary>
            <para>Used by the inspector, set to <c>true</c> when the property is checkable.</para>
            </summary>
        </member>
        <member name="P:Godot.EditorProperty.Checked">
            <summary>
            <para>Used by the inspector, set to <c>true</c> when the property is checked.</para>
            </summary>
        </member>
        <member name="P:Godot.EditorProperty.DrawWarning">
            <summary>
            <para>Used by the inspector, set to <c>true</c> when the property is drawn with the editor theme's warning color. This is used for editable children's properties.</para>
            </summary>
        </member>
        <member name="P:Godot.EditorProperty.Keying">
            <summary>
            <para>Used by the inspector, set to <c>true</c> when the property can add keys for animation.</para>
            </summary>
        </member>
        <member name="P:Godot.EditorProperty.Deletable">
            <summary>
            <para>Used by the inspector, set to <c>true</c> when the property can be deleted by the user.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorProperty._SetReadOnly(System.Boolean)">
            <summary>
            <para>Called when the read-only status of the property is changed. It may be used to change custom controls into a read-only or modifiable state.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorProperty._UpdateProperty">
            <summary>
            <para>When this virtual function is called, you must update your editor.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorProperty.GetEditedProperty">
            <summary>
            <para>Gets the edited property. If your editor is for a single property (added via <see cref="M:Godot.EditorInspectorPlugin._ParseProperty(Godot.GodotObject,Godot.Variant.Type,System.String,Godot.PropertyHint,System.String,Godot.PropertyUsageFlags,System.Boolean)"/>), then this will return the property.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorProperty.GetEditedObject">
            <summary>
            <para>Gets the edited object.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorProperty.UpdateProperty">
            <summary>
            <para>Forces refresh of the property display.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorProperty.AddFocusable(Godot.Control)">
            <summary>
            <para>If any of the controls added can gain keyboard focus, add it here. This ensures that focus will be restored if the inspector is refreshed.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorProperty.SetBottomEditor(Godot.Control)">
            <summary>
            <para>Puts the <c>editor</c> control below the property label. The control must be previously added using <see cref="M:Godot.Node.AddChild(Godot.Node,System.Boolean,Godot.Node.InternalMode)"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorProperty.EmitChanged(Godot.StringName,Godot.Variant,Godot.StringName,System.Boolean)">
            <summary>
            <para>If one or several properties have changed, this must be called. <c>field</c> is used in case your editor can modify fields separately (as an example, Vector3.x). The <c>changing</c> argument avoids the editor requesting this property to be refreshed (leave as <c>false</c> if unsure).</para>
            </summary>
        </member>
        <member name="T:Godot.EditorProperty.PropertyChangedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorProperty.PropertyChanged"/> event of a <see cref="T:Godot.EditorProperty"/> class.
            </summary>
        </member>
        <member name="E:Godot.EditorProperty.PropertyChanged">
            <summary>
            <para>Do not emit this manually, use the <see cref="M:Godot.EditorProperty.EmitChanged(Godot.StringName,Godot.Variant,Godot.StringName,System.Boolean)"/> method instead.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorProperty.MultiplePropertiesChangedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorProperty.MultiplePropertiesChanged"/> event of a <see cref="T:Godot.EditorProperty"/> class.
            </summary>
        </member>
        <member name="E:Godot.EditorProperty.MultiplePropertiesChanged">
            <summary>
            <para>Emit it if you want multiple properties modified at the same time. Do not use if added via <see cref="M:Godot.EditorInspectorPlugin._ParseProperty(Godot.GodotObject,Godot.Variant.Type,System.String,Godot.PropertyHint,System.String,Godot.PropertyUsageFlags,System.Boolean)"/>.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorProperty.PropertyKeyedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorProperty.PropertyKeyed"/> event of a <see cref="T:Godot.EditorProperty"/> class.
            </summary>
        </member>
        <member name="E:Godot.EditorProperty.PropertyKeyed">
            <summary>
            <para>Emit it if you want to add this value as an animation key (check for keying being enabled first).</para>
            </summary>
        </member>
        <member name="T:Godot.EditorProperty.PropertyDeletedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorProperty.PropertyDeleted"/> event of a <see cref="T:Godot.EditorProperty"/> class.
            </summary>
        </member>
        <member name="E:Godot.EditorProperty.PropertyDeleted">
            <summary>
            <para>Emitted when a property was deleted. Used internally.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorProperty.PropertyKeyedWithValueEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorProperty.PropertyKeyedWithValue"/> event of a <see cref="T:Godot.EditorProperty"/> class.
            </summary>
        </member>
        <member name="E:Godot.EditorProperty.PropertyKeyedWithValue">
            <summary>
            <para>Emit it if you want to key a property with a single value.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorProperty.PropertyCheckedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorProperty.PropertyChecked"/> event of a <see cref="T:Godot.EditorProperty"/> class.
            </summary>
        </member>
        <member name="E:Godot.EditorProperty.PropertyChecked">
            <summary>
            <para>Emitted when a property was checked. Used internally.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorProperty.PropertyPinnedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorProperty.PropertyPinned"/> event of a <see cref="T:Godot.EditorProperty"/> class.
            </summary>
        </member>
        <member name="E:Godot.EditorProperty.PropertyPinned">
            <summary>
            <para>Emit it if you want to mark (or unmark) the value of a property for being saved regardless of being equal to the default value.</para>
            <para>The default value is the one the property will get when the node is just instantiated and can come from an ancestor scene in the inheritance/instantiation chain, a script or a builtin class.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorProperty.PropertyCanRevertChangedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorProperty.PropertyCanRevertChanged"/> event of a <see cref="T:Godot.EditorProperty"/> class.
            </summary>
        </member>
        <member name="E:Godot.EditorProperty.PropertyCanRevertChanged">
            <summary>
            <para>Emitted when the revertability (i.e., whether it has a non-default value and thus is displayed with a revert icon) of a property has changed.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorProperty.ResourceSelectedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorProperty.ResourceSelected"/> event of a <see cref="T:Godot.EditorProperty"/> class.
            </summary>
        </member>
        <member name="E:Godot.EditorProperty.ResourceSelected">
            <summary>
            <para>If you want a sub-resource to be edited, emit this signal with the resource.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorProperty.ObjectIdSelectedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorProperty.ObjectIdSelected"/> event of a <see cref="T:Godot.EditorProperty"/> class.
            </summary>
        </member>
        <member name="E:Godot.EditorProperty.ObjectIdSelected">
            <summary>
            <para>Used by sub-inspectors. Emit it if what was selected was an Object ID.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorProperty.SelectedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorProperty.Selected"/> event of a <see cref="T:Godot.EditorProperty"/> class.
            </summary>
        </member>
        <member name="E:Godot.EditorProperty.Selected">
            <summary>
            <para>Emitted when selected. Used internally.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorResourceConversionPlugin">
            <summary>
            <para><see cref="T:Godot.EditorResourceConversionPlugin"/> is invoked when the context menu is brought up for a resource in the editor inspector. Relevant conversion plugins will appear as menu options to convert the given resource to a target type.</para>
            <para>Below shows an example of a basic plugin that will convert an <see cref="T:Godot.ImageTexture"/> to a <see cref="T:Godot.PortableCompressedTexture2D"/>.</para>
            <para></para>
            <para>To use an <see cref="T:Godot.EditorResourceConversionPlugin"/>, register it using the <see cref="M:Godot.EditorPlugin.AddResourceConversionPlugin(Godot.EditorResourceConversionPlugin)"/> method first.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorResourceConversionPlugin._Convert(Godot.Resource)">
            <summary>
            <para>Takes an input <see cref="T:Godot.Resource"/> and converts it to the type given in <see cref="M:Godot.EditorResourceConversionPlugin._ConvertsTo"/>. The returned <see cref="T:Godot.Resource"/> is the result of the conversion, and the input <see cref="T:Godot.Resource"/> remains unchanged.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorResourceConversionPlugin._ConvertsTo">
            <summary>
            <para>Returns the class name of the target type of <see cref="T:Godot.Resource"/> that this plugin converts source resources to.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorResourceConversionPlugin._Handles(Godot.Resource)">
            <summary>
            <para>Called to determine whether a particular <see cref="T:Godot.Resource"/> can be converted to the target resource type by this plugin.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorResourcePicker">
            <summary>
            <para>This <see cref="T:Godot.Control"/> node is used in the editor's Inspector dock to allow editing of <see cref="T:Godot.Resource"/> type properties. It provides options for creating, loading, saving and converting resources. Can be used with <see cref="T:Godot.EditorInspectorPlugin"/> to recreate the same behavior.</para>
            <para><b>Note:</b> This <see cref="T:Godot.Control"/> does not include any editor for the resource, as editing is controlled by the Inspector dock itself or sub-Inspectors.</para>
            </summary>
        </member>
        <member name="P:Godot.EditorResourcePicker.BaseType">
            <summary>
            <para>The base type of allowed resource types. Can be a comma-separated list of several options.</para>
            </summary>
        </member>
        <member name="P:Godot.EditorResourcePicker.EditedResource">
            <summary>
            <para>The edited resource value.</para>
            </summary>
        </member>
        <member name="P:Godot.EditorResourcePicker.Editable">
            <summary>
            <para>If <c>true</c>, the value can be selected and edited.</para>
            </summary>
        </member>
        <member name="P:Godot.EditorResourcePicker.ToggleMode">
            <summary>
            <para>If <c>true</c>, the main button with the resource preview works in the toggle mode. Use <see cref="M:Godot.EditorResourcePicker.SetTogglePressed(System.Boolean)"/> to manually set the state.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorResourcePicker._HandleMenuSelected(System.Int32)">
            <summary>
            <para>This virtual method can be implemented to handle context menu items not handled by default. See <see cref="M:Godot.EditorResourcePicker._SetCreateOptions(Godot.GodotObject)"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorResourcePicker._SetCreateOptions(Godot.GodotObject)">
            <summary>
            <para>This virtual method is called when updating the context menu of <see cref="T:Godot.EditorResourcePicker"/>. Implement this method to override the "New ..." items with your own options. <c>menuNode</c> is a reference to the <see cref="T:Godot.PopupMenu"/> node.</para>
            <para><b>Note:</b> Implement <see cref="M:Godot.EditorResourcePicker._HandleMenuSelected(System.Int32)"/> to handle these custom items.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorResourcePicker.GetAllowedTypes">
            <summary>
            <para>Returns a list of all allowed types and subtypes corresponding to the <see cref="P:Godot.EditorResourcePicker.BaseType"/>. If the <see cref="P:Godot.EditorResourcePicker.BaseType"/> is empty, an empty list is returned.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorResourcePicker.SetTogglePressed(System.Boolean)">
            <summary>
            <para>Sets the toggle mode state for the main button. Works only if <see cref="P:Godot.EditorResourcePicker.ToggleMode"/> is set to <c>true</c>.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorResourcePicker.ResourceSelectedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorResourcePicker.ResourceSelected"/> event of a <see cref="T:Godot.EditorResourcePicker"/> class.
            </summary>
        </member>
        <member name="E:Godot.EditorResourcePicker.ResourceSelected">
            <summary>
            <para>Emitted when the resource value was set and user clicked to edit it. When <c>inspect</c> is <c>true</c>, the signal was caused by the context menu "Edit" or "Inspect" option.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorResourcePicker.ResourceChangedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorResourcePicker.ResourceChanged"/> event of a <see cref="T:Godot.EditorResourcePicker"/> class.
            </summary>
        </member>
        <member name="E:Godot.EditorResourcePicker.ResourceChanged">
            <summary>
            <para>Emitted when the value of the edited resource was changed.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorResourcePreview">
            <summary>
            <para>This object is used to generate previews for resources of files.</para>
            <para><b>Note:</b> This class shouldn't be instantiated directly. Instead, access the singleton using <see cref="M:Godot.EditorInterface.GetResourcePreviewer"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorResourcePreview.QueueResourcePreview(System.String,Godot.GodotObject,Godot.StringName,Godot.Variant)">
            <summary>
            <para>Queue a resource file located at <c>path</c> for preview. Once the preview is ready, the <c>receiver</c>'s <c>receiverFunc</c> will be called. The <c>receiverFunc</c> must take the following four arguments: <see cref="T:System.String"/> path, <see cref="T:Godot.Texture2D"/> preview, <see cref="T:Godot.Texture2D"/> thumbnail_preview, <see cref="T:Godot.Variant"/> userdata. <c>userdata</c> can be anything, and will be returned when <c>receiverFunc</c> is called.</para>
            <para><b>Note:</b> If it was not possible to create the preview the <c>receiverFunc</c> will still be called, but the preview will be null.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorResourcePreview.QueueEditedResourcePreview(Godot.Resource,Godot.GodotObject,Godot.StringName,Godot.Variant)">
            <summary>
            <para>Queue the <c>resource</c> being edited for preview. Once the preview is ready, the <c>receiver</c>'s <c>receiverFunc</c> will be called. The <c>receiverFunc</c> must take the following four arguments: <see cref="T:System.String"/> path, <see cref="T:Godot.Texture2D"/> preview, <see cref="T:Godot.Texture2D"/> thumbnail_preview, <see cref="T:Godot.Variant"/> userdata. <c>userdata</c> can be anything, and will be returned when <c>receiverFunc</c> is called.</para>
            <para><b>Note:</b> If it was not possible to create the preview the <c>receiverFunc</c> will still be called, but the preview will be null.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorResourcePreview.AddPreviewGenerator(Godot.EditorResourcePreviewGenerator)">
            <summary>
            <para>Create an own, custom preview generator.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorResourcePreview.RemovePreviewGenerator(Godot.EditorResourcePreviewGenerator)">
            <summary>
            <para>Removes a custom preview generator.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorResourcePreview.CheckForInvalidation(System.String)">
            <summary>
            <para>Check if the resource changed, if so, it will be invalidated and the corresponding signal emitted.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorResourcePreview.PreviewInvalidatedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorResourcePreview.PreviewInvalidated"/> event of a <see cref="T:Godot.EditorResourcePreview"/> class.
            </summary>
        </member>
        <member name="E:Godot.EditorResourcePreview.PreviewInvalidated">
            <summary>
            <para>Emitted if a preview was invalidated (changed). <c>path</c> corresponds to the path of the preview.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorResourcePreviewGenerator">
            <summary>
            <para>Custom code to generate previews. Please check <c>file_dialog/thumbnail_size</c> in <see cref="T:Godot.EditorSettings"/> to find out the right size to do previews at.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorResourcePreviewGenerator._CanGenerateSmallPreview">
            <summary>
            <para>If this function returns <c>true</c>, the generator will call <see cref="M:Godot.EditorResourcePreviewGenerator._Generate(Godot.Resource,Godot.Vector2I)"/> or <see cref="M:Godot.EditorResourcePreviewGenerator._GenerateFromPath(System.String,Godot.Vector2I)"/> for small previews as well.</para>
            <para>By default, it returns <c>false</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorResourcePreviewGenerator._Generate(Godot.Resource,Godot.Vector2I)">
            <summary>
            <para>Generate a preview from a given resource with the specified size. This must always be implemented.</para>
            <para>Returning an empty texture is an OK way to fail and let another generator take care.</para>
            <para>Care must be taken because this function is always called from a thread (not the main thread).</para>
            </summary>
        </member>
        <member name="M:Godot.EditorResourcePreviewGenerator._GenerateFromPath(System.String,Godot.Vector2I)">
            <summary>
            <para>Generate a preview directly from a path with the specified size. Implementing this is optional, as default code will load and call <see cref="M:Godot.EditorResourcePreviewGenerator._Generate(Godot.Resource,Godot.Vector2I)"/>.</para>
            <para>Returning an empty texture is an OK way to fail and let another generator take care.</para>
            <para>Care must be taken because this function is always called from a thread (not the main thread).</para>
            </summary>
        </member>
        <member name="M:Godot.EditorResourcePreviewGenerator._GenerateSmallPreviewAutomatically">
            <summary>
            <para>If this function returns <c>true</c>, the generator will automatically generate the small previews from the normal preview texture generated by the methods <see cref="M:Godot.EditorResourcePreviewGenerator._Generate(Godot.Resource,Godot.Vector2I)"/> or <see cref="M:Godot.EditorResourcePreviewGenerator._GenerateFromPath(System.String,Godot.Vector2I)"/>.</para>
            <para>By default, it returns <c>false</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorResourcePreviewGenerator._Handles(System.String)">
            <summary>
            <para>Returns <c>true</c> if your generator supports the resource of type <c>type</c>.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorSceneFormatImporter">
            <summary>
            <para><see cref="T:Godot.EditorSceneFormatImporter"/> allows to define an importer script for a third-party 3D format.</para>
            <para>To use <see cref="T:Godot.EditorSceneFormatImporter"/>, register it using the <see cref="M:Godot.EditorPlugin.AddSceneFormatImporterPlugin(Godot.EditorSceneFormatImporter,System.Boolean)"/> method first.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorSceneFormatImporterBlend">
            <summary>
            <para>Imports Blender scenes in the <c>.blend</c> file format through the glTF 2.0 3D import pipeline. This importer requires Blender to be installed by the user, so that it can be used to export the scene as glTF 2.0.</para>
            <para>The location of the Blender binary is set via the <c>filesystem/import/blender/blender3_path</c> editor setting.</para>
            <para>This importer is only used if <c>ProjectSettings.filesystem/import/blender/enabled</c> is enabled, otherwise <c>.blend</c> files present in the project folder are not imported.</para>
            <para>Blend import requires Blender 3.0.</para>
            <para>Internally, the EditorSceneFormatImporterBlend uses the Blender glTF "Use Original" mode to reference external textures.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorSceneFormatImporterFbx">
            <summary>
            <para>Imports Autodesk FBX 3D scenes by way of converting them to glTF 2.0 using the FBX2glTF command line tool.</para>
            <para>The location of the FBX2glTF binary is set via the <c>filesystem/import/fbx/fbx2gltf_path</c> editor setting.</para>
            <para>This importer is only used if <c>ProjectSettings.filesystem/import/fbx/enabled</c> is enabled, otherwise <c>.fbx</c> files present in the project folder are not imported.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorScenePostImport">
            <summary>
            <para>Imported scenes can be automatically modified right after import by setting their <b>Custom Script</b> Import property to a <c>tool</c> script that inherits from this class.</para>
            <para>The <see cref="M:Godot.EditorScenePostImport._PostImport(Godot.Node)"/> callback receives the imported scene's root node and returns the modified version of the scene. Usage example:</para>
            <para><code>
            using Godot;
            
            // This sample changes all node names.
            // Called right after the scene is imported and gets the root node.
            [Tool]
            public partial class NodeRenamer : EditorScenePostImport
            {
                public override GodotObject _PostImport(Node scene)
                {
                    // Change all node names to "modified_[oldnodename]"
                    Iterate(scene);
                    return scene; // Remember to return the imported scene
                }
            
                public void Iterate(Node node)
                {
                    if (node != null)
                    {
                        node.Name = $"modified_{node.Name}";
                        foreach (Node child in node.GetChildren())
                        {
                            Iterate(child);
                        }
                    }
                }
            }
            </code></para>
            </summary>
        </member>
        <member name="M:Godot.EditorScenePostImport._PostImport(Godot.Node)">
            <summary>
            <para>Called after the scene was imported. This method must return the modified version of the scene.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorScenePostImport.GetSourceFile">
            <summary>
            <para>Returns the source file path which got imported (e.g. <c>res://scene.dae</c>).</para>
            </summary>
        </member>
        <member name="T:Godot.EditorScenePostImportPlugin">
            <summary>
            <para>This plugin type exists to modify the process of importing scenes, allowing to change the content as well as add importer options at every stage of the process.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorScenePostImportPlugin._GetImportOptions(System.String)">
            <summary>
            <para>Override to add general import options. These will appear in the main import dock on the editor. Add options via <see cref="M:Godot.EditorScenePostImportPlugin.AddImportOption(System.String,Godot.Variant)"/> and <see cref="M:Godot.EditorScenePostImportPlugin.AddImportOptionAdvanced(Godot.Variant.Type,System.String,Godot.Variant,Godot.PropertyHint,System.String,System.Int32)"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorScenePostImportPlugin._GetInternalImportOptions(System.Int32)">
            <summary>
            <para>Override to add internal import options. These will appear in the 3D scene import dialog. Add options via <see cref="M:Godot.EditorScenePostImportPlugin.AddImportOption(System.String,Godot.Variant)"/> and <see cref="M:Godot.EditorScenePostImportPlugin.AddImportOptionAdvanced(Godot.Variant.Type,System.String,Godot.Variant,Godot.PropertyHint,System.String,System.Int32)"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorScenePostImportPlugin._GetInternalOptionUpdateViewRequired(System.Int32,System.String)">
            <summary>
            <para>Return true whether updating the 3D view of the import dialog needs to be updated if an option has changed.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorScenePostImportPlugin._GetInternalOptionVisibility(System.Int32,System.Boolean,System.String)">
            <summary>
            <para>Return true or false whether a given option should be visible. Return null to ignore.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorScenePostImportPlugin._GetOptionVisibility(System.String,System.Boolean,System.String)">
            <summary>
            <para>Return true or false whether a given option should be visible. Return null to ignore.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorScenePostImportPlugin._InternalProcess(System.Int32,Godot.Node,Godot.Node,Godot.Resource)">
            <summary>
            <para>Process a specific node or resource for a given category.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorScenePostImportPlugin._PostProcess(Godot.Node)">
            <summary>
            <para>Post process the scene. This function is called after the final scene has been configured.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorScenePostImportPlugin._PreProcess(Godot.Node)">
            <summary>
            <para>Pre Process the scene. This function is called right after the scene format loader loaded the scene and no changes have been made.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorScenePostImportPlugin.GetOptionValue(Godot.StringName)">
            <summary>
            <para>Query the value of an option. This function can only be called from those querying visibility, or processing.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorScenePostImportPlugin.AddImportOption(System.String,Godot.Variant)">
            <summary>
            <para>Add a specific import option (name and default value only). This function can only be called from <see cref="M:Godot.EditorScenePostImportPlugin._GetImportOptions(System.String)"/> and <see cref="M:Godot.EditorScenePostImportPlugin._GetInternalImportOptions(System.Int32)"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorScenePostImportPlugin.AddImportOptionAdvanced(Godot.Variant.Type,System.String,Godot.Variant,Godot.PropertyHint,System.String,System.Int32)">
            <summary>
            <para>Add a specific import option. This function can only be called from <see cref="M:Godot.EditorScenePostImportPlugin._GetImportOptions(System.String)"/> and <see cref="M:Godot.EditorScenePostImportPlugin._GetInternalImportOptions(System.Int32)"/>.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorScript">
            <summary>
            <para>Scripts extending this class and implementing its <see cref="M:Godot.EditorScript._Run"/> method can be executed from the Script Editor's <b>File &gt; Run</b> menu option (or by pressing Ctrl + Shift + X) while the editor is running. This is useful for adding custom in-editor functionality to Godot. For more complex additions, consider using <see cref="T:Godot.EditorPlugin"/>s instead.</para>
            <para><b>Note:</b> Extending scripts need to have <c>tool</c> mode enabled.</para>
            <para><b>Example script:</b></para>
            <para><code>
            using Godot;
            
            [Tool]
            public partial class HelloEditor : EditorScript
            {
                public override void _Run()
                {
                    GD.Print("Hello from the Godot Editor!");
                }
            }
            </code></para>
            <para><b>Note:</b> The script is run in the Editor context, which means the output is visible in the console window started with the Editor (stdout) instead of the usual Godot <b>Output</b> dock.</para>
            <para><b>Note:</b> EditorScript is <see cref="T:Godot.RefCounted"/>, meaning it is destroyed when nothing references it. This can cause errors during asynchronous operations if there are no references to the script.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorScript._Run">
            <summary>
            <para>This method is executed by the Editor when <b>File &gt; Run</b> is used.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorScript.AddRootNode(Godot.Node)">
            <summary>
            <para>Adds <c>node</c> as a child of the root node in the editor context.</para>
            <para><b>Warning:</b> The implementation of this method is currently disabled.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorScript.GetScene">
            <summary>
            <para>Returns the Editor's currently active scene.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorScript.GetEditorInterface">
            <summary>
            <para>Returns the <see cref="T:Godot.EditorInterface"/> singleton instance.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorScriptPicker">
            <summary>
            <para>Similar to <see cref="T:Godot.EditorResourcePicker"/> this <see cref="T:Godot.Control"/> node is used in the editor's Inspector dock, but only to edit the <c>script</c> property of a <see cref="T:Godot.Node"/>. Default options for creating new resources of all possible subtypes are replaced with dedicated buttons that open the "Attach Node Script" dialog. Can be used with <see cref="T:Godot.EditorInspectorPlugin"/> to recreate the same behavior.</para>
            <para><b>Note:</b> You must set the <see cref="P:Godot.EditorScriptPicker.ScriptOwner"/> for the custom context menu items to work.</para>
            </summary>
        </member>
        <member name="P:Godot.EditorScriptPicker.ScriptOwner">
            <summary>
            <para>The owner <see cref="T:Godot.Node"/> of the script property that holds the edited resource.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorSelection">
            <summary>
            <para>This object manages the SceneTree selection in the editor.</para>
            <para><b>Note:</b> This class shouldn't be instantiated directly. Instead, access the singleton using <see cref="M:Godot.EditorInterface.GetSelection"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorSelection.Clear">
            <summary>
            <para>Clear the selection.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorSelection.AddNode(Godot.Node)">
            <summary>
            <para>Adds a node to the selection.</para>
            <para><b>Note:</b> The newly selected node will not be automatically edited in the inspector. If you want to edit a node, use <see cref="M:Godot.EditorInterface.EditNode(Godot.Node)"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorSelection.RemoveNode(Godot.Node)">
            <summary>
            <para>Removes a node from the selection.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorSelection.GetSelectedNodes">
            <summary>
            <para>Gets the list of selected nodes.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorSelection.GetTransformableSelectedNodes">
            <summary>
            <para>Gets the list of selected nodes, optimized for transform operations (i.e. moving them, rotating, etc). This list avoids situations where a node is selected and also child/grandchild.</para>
            </summary>
        </member>
        <member name="E:Godot.EditorSelection.SelectionChanged">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorSelection.SelectionChanged"/> event of a <see cref="T:Godot.EditorSelection"/> class.
            </summary>
            <summary>
            <para>Emitted when the selection changes.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorSettings">
            <summary>
            <para>Object that holds the project-independent editor settings. These settings are generally visible in the <b>Editor &gt; Editor Settings</b> menu.</para>
            <para>Property names use slash delimiters to distinguish sections. Setting values can be of any <see cref="T:Godot.Variant"/> type. It's recommended to use <c>snake_case</c> for editor settings to be consistent with the Godot editor itself.</para>
            <para>Accessing the settings can be done using the following methods, such as:</para>
            <para><code>
            EditorSettings settings = GetEditorInterface().GetEditorSettings();
            // `settings.set("some/property", value)` also works as this class overrides `_set()` internally.
            settings.SetSetting("some/property", Value);
            // `settings.get("some/property", value)` also works as this class overrides `_get()` internally.
            settings.GetSetting("some/property");
            Godot.Collections.Array&lt;Godot.Collections.Dictionary&gt; listOfSettings = settings.GetPropertyList();
            </code></para>
            <para><b>Note:</b> This class shouldn't be instantiated directly. Instead, access the singleton using <see cref="M:Godot.EditorInterface.GetEditorSettings"/>.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorSettings.NotificationEditorSettingsChanged">
            <summary>
            <para>Emitted after any editor setting has changed. It's used by various editor plugins to update their visuals on theme changes or logic on configuration changes.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorSettings.HasSetting(System.String)">
            <summary>
            <para>Returns <c>true</c> if the setting specified by <c>name</c> exists, <c>false</c> otherwise.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorSettings.SetSetting(System.String,Godot.Variant)">
            <summary>
            <para>Sets the <c>value</c> of the setting specified by <c>name</c>. This is equivalent to using <see cref="M:Godot.GodotObject.Set(Godot.StringName,Godot.Variant)"/> on the EditorSettings instance.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorSettings.GetSetting(System.String)">
            <summary>
            <para>Returns the value of the setting specified by <c>name</c>. This is equivalent to using <see cref="M:Godot.GodotObject.Get(Godot.StringName)"/> on the EditorSettings instance.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorSettings.Erase(System.String)">
            <summary>
            <para>Erases the setting whose name is specified by <c>property</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorSettings.SetInitialValue(Godot.StringName,Godot.Variant,System.Boolean)">
            <summary>
            <para>Sets the initial value of the setting specified by <c>name</c> to <c>value</c>. This is used to provide a value for the Revert button in the Editor Settings. If <c>updateCurrent</c> is true, the current value of the setting will be set to <c>value</c> as well.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorSettings.AddPropertyInfo(Godot.Collections.Dictionary)">
            <summary>
            <para>Adds a custom property info to a property. The dictionary must contain:</para>
            <para>- <c>name</c>: <see cref="T:System.String"/> (the name of the property)</para>
            <para>- <c>type</c>: <see cref="T:System.Int32"/> (see <see cref="T:Godot.Variant.Type"/>)</para>
            <para>- optionally <c>hint</c>: <see cref="T:System.Int32"/> (see <see cref="T:Godot.PropertyHint"/>) and <c>hint_string</c>: <see cref="T:System.String"/></para>
            <para><b>Example:</b></para>
            <para><code>
            var settings = GetEditorInterface().GetEditorSettings();
            settings.Set("category/property_name", 0);
            
            var propertyInfo = new Godot.Collections.Dictionary
            {
                {"name", "category/propertyName"},
                {"type", Variant.Type.Int},
                {"hint", PropertyHint.Enum},
                {"hint_string", "one,two,three"}
            };
            
            settings.AddPropertyInfo(propertyInfo);
            </code></para>
            </summary>
        </member>
        <member name="M:Godot.EditorSettings.SetProjectMetadata(System.String,System.String,Godot.Variant)">
            <summary>
            <para>Sets project-specific metadata with the <c>section</c>, <c>key</c> and <c>data</c> specified. This metadata is stored outside the project folder and therefore won't be checked into version control. See also <see cref="M:Godot.EditorSettings.GetProjectMetadata(System.String,System.String,Godot.Variant)"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorSettings.GetProjectMetadata(System.String,System.String,Godot.Variant)">
            <summary>
            <para>Returns project-specific metadata for the <c>section</c> and <c>key</c> specified. If the metadata doesn't exist, <c>default</c> will be returned instead. See also <see cref="M:Godot.EditorSettings.SetProjectMetadata(System.String,System.String,Godot.Variant)"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorSettings.SetFavorites(System.String[])">
            <summary>
            <para>Sets the list of favorite files and directories for this project.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorSettings.GetFavorites">
            <summary>
            <para>Returns the list of favorite files and directories for this project.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorSettings.SetRecentDirs(System.String[])">
            <summary>
            <para>Sets the list of recently visited folders in the file dialog for this project.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorSettings.GetRecentDirs">
            <summary>
            <para>Returns the list of recently visited folders in the file dialog for this project.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorSettings.SetBuiltinActionOverride(System.String,Godot.Collections.Array{Godot.InputEvent})">
            <summary>
            <para>Overrides the built-in editor action <c>name</c> with the input actions defined in <c>actionsList</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorSettings.CheckChangedSettingsInGroup(System.String)">
            <summary>
            <para>Checks if any settings with the prefix <c>settingPrefix</c> exist in the set of changed settings. See also <see cref="M:Godot.EditorSettings.GetChangedSettings"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorSettings.GetChangedSettings">
            <summary>
            <para>Gets an array of the settings which have been changed since the last save. Note that internally <c>changed_settings</c> is cleared after a successful save, so generally the most appropriate place to use this method is when processing <see cref="F:Godot.EditorSettings.NotificationEditorSettingsChanged"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorSettings.MarkSettingChanged(System.String)">
            <summary>
            <para>Marks the passed editor setting as being changed, see <see cref="M:Godot.EditorSettings.GetChangedSettings"/>. Only settings which exist (see <see cref="M:Godot.EditorSettings.HasSetting(System.String)"/>) will be accepted.</para>
            </summary>
        </member>
        <member name="E:Godot.EditorSettings.SettingsChanged">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorSettings.SettingsChanged"/> event of a <see cref="T:Godot.EditorSettings"/> class.
            </summary>
            <summary>
            <para>Emitted after any editor setting has changed.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorSpinSlider">
            <summary>
            <para>This <see cref="T:Godot.Control"/> node is used in the editor's Inspector dock to allow editing of numeric values. Can be used with <see cref="T:Godot.EditorInspectorPlugin"/> to recreate the same behavior.</para>
            </summary>
        </member>
        <member name="P:Godot.EditorSpinSlider.Label">
            <summary>
            <para>The text that displays to the left of the value.</para>
            </summary>
        </member>
        <member name="P:Godot.EditorSpinSlider.Suffix">
            <summary>
            <para>The suffix to display after the value (in a faded color). This should generally be a plural word. You may have to use an abbreviation if the suffix is too long to be displayed.</para>
            </summary>
        </member>
        <member name="P:Godot.EditorSpinSlider.ReadOnly">
            <summary>
            <para>If <c>true</c>, the slider can't be interacted with.</para>
            </summary>
        </member>
        <member name="P:Godot.EditorSpinSlider.Flat">
            <summary>
            <para>If <c>true</c>, the slider will not draw background.</para>
            </summary>
        </member>
        <member name="P:Godot.EditorSpinSlider.HideSlider">
            <summary>
            <para>If <c>true</c>, the slider is hidden.</para>
            </summary>
        </member>
        <member name="E:Godot.EditorSpinSlider.Grabbed">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorSpinSlider.Grabbed"/> event of a <see cref="T:Godot.EditorSpinSlider"/> class.
            </summary>
            <summary>
            <para>Emitted when the spinner/slider is grabbed.</para>
            </summary>
        </member>
        <member name="E:Godot.EditorSpinSlider.Ungrabbed">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorSpinSlider.Ungrabbed"/> event of a <see cref="T:Godot.EditorSpinSlider"/> class.
            </summary>
            <summary>
            <para>Emitted when the spinner/slider is ungrabbed.</para>
            </summary>
        </member>
        <member name="E:Godot.EditorSpinSlider.ValueFocusEntered">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorSpinSlider.ValueFocusEntered"/> event of a <see cref="T:Godot.EditorSpinSlider"/> class.
            </summary>
            <summary>
            <para>Emitted when the value form gains focus.</para>
            </summary>
        </member>
        <member name="E:Godot.EditorSpinSlider.ValueFocusExited">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorSpinSlider.ValueFocusExited"/> event of a <see cref="T:Godot.EditorSpinSlider"/> class.
            </summary>
            <summary>
            <para>Emitted when the value form loses focus.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorSyntaxHighlighter">
            <summary>
            <para>Base syntax highlighter resource all editor syntax highlighters extend from, it is used in the <see cref="T:Godot.ScriptEditor"/>.</para>
            <para>Add a syntax highlighter to an individual script by calling <see cref="M:Godot.ScriptEditorBase.AddSyntaxHighlighter(Godot.EditorSyntaxHighlighter)"/>. To apply to all scripts on open, call <see cref="M:Godot.ScriptEditor.RegisterSyntaxHighlighter(Godot.EditorSyntaxHighlighter)"/></para>
            </summary>
        </member>
        <member name="M:Godot.EditorSyntaxHighlighter._GetName">
            <summary>
            <para>Virtual method which can be overridden to return the syntax highlighter name.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorSyntaxHighlighter._GetSupportedLanguages">
            <summary>
            <para>Virtual method which can be overridden to return the supported language names.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorTranslationParserPlugin">
            <summary>
            <para><see cref="T:Godot.EditorTranslationParserPlugin"/> is invoked when a file is being parsed to extract strings that require translation. To define the parsing and string extraction logic, override the <see cref="M:Godot.EditorTranslationParserPlugin._ParseFile(System.String,Godot.Collections.Array{System.String},Godot.Collections.Array{Godot.Collections.Array})"/> method in script.</para>
            <para>Add the extracted strings to argument <c>msgids</c> or <c>msgids_context_plural</c> if context or plural is used.</para>
            <para>When adding to <c>msgids_context_plural</c>, you must add the data using the format <c>["A", "B", "C"]</c>, where <c>A</c> represents the extracted string, <c>B</c> represents the context, and <c>C</c> represents the plural version of the extracted string. If you want to add only context but not plural, put <c>""</c> for the plural slot. The idea is the same if you only want to add plural but not context. See the code below for concrete examples.</para>
            <para>The extracted strings will be written into a POT file selected by user under "POT Generation" in "Localization" tab in "Project Settings" menu.</para>
            <para>Below shows an example of a custom parser that extracts strings from a CSV file to write into a POT.</para>
            <para><code>
            using Godot;
            
            [Tool]
            public partial class CustomParser : EditorTranslationParserPlugin
            {
                public override void _ParseFile(string path, Godot.Collections.Array&lt;string&gt; msgids, Godot.Collections.Array&lt;Godot.Collections.Array&gt; msgidsContextPlural)
                {
                    using var file = FileAccess.Open(path, FileAccess.ModeFlags.Read);
                    string text = file.GetAsText();
                    string[] splitStrs = text.Split(",", allowEmpty: false);
                    foreach (string s in splitStrs)
                    {
                        msgids.Add(s);
                        //GD.Print($"Extracted string: {s}");
                    }
                }
            
                public override string[] _GetRecognizedExtensions()
                {
                    return new string[] { "csv" };
                }
            }
            </code></para>
            <para>To add a translatable string associated with context or plural, add it to <c>msgids_context_plural</c>:</para>
            <para><code>
            // This will add a message with msgid "Test 1", msgctxt "context", and msgid_plural "test 1 plurals".
            msgidsContextPlural.Add(new Godot.Collections.Array{"Test 1", "context", "test 1 Plurals"});
            // This will add a message with msgid "A test without context" and msgid_plural "plurals".
            msgidsContextPlural.Add(new Godot.Collections.Array{"A test without context", "", "plurals"});
            // This will add a message with msgid "Only with context" and msgctxt "a friendly context".
            msgidsContextPlural.Add(new Godot.Collections.Array{"Only with context", "a friendly context", ""});
            </code></para>
            <para><b>Note:</b> If you override parsing logic for standard script types (GDScript, C#, etc.), it would be better to load the <c>path</c> argument using <see cref="M:Godot.ResourceLoader.Load(System.String,System.String,Godot.ResourceLoader.CacheMode)"/>. This is because built-in scripts are loaded as <see cref="T:Godot.Resource"/> type, not <see cref="T:Godot.FileAccess"/> type.</para>
            <para>For example:</para>
            <para><code>
            public override void _ParseFile(string path, Godot.Collections.Array&lt;string&gt; msgids, Godot.Collections.Array&lt;Godot.Collections.Array&gt; msgidsContextPlural)
            {
                var res = ResourceLoader.Load&lt;Script&gt;(path, "Script");
                string text = res.SourceCode;
                // Parsing logic.
            }
            
            public override string[] _GetRecognizedExtensions()
            {
                return new string[] { "gd" };
            }
            </code></para>
            <para>To use <see cref="T:Godot.EditorTranslationParserPlugin"/>, register it using the <see cref="M:Godot.EditorPlugin.AddTranslationParserPlugin(Godot.EditorTranslationParserPlugin)"/> method first.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorTranslationParserPlugin._GetRecognizedExtensions">
            <summary>
            <para>Gets the list of file extensions to associate with this parser, e.g. <c>["csv"]</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorTranslationParserPlugin._ParseFile(System.String,Godot.Collections.Array{System.String},Godot.Collections.Array{Godot.Collections.Array})">
            <summary>
            <para>Override this method to define a custom parsing logic to extract the translatable strings.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorUndoRedoManager">
            <summary>
            <para><see cref="T:Godot.EditorUndoRedoManager"/> is a manager for <see cref="T:Godot.UndoRedo"/> objects associated with edited scenes. Each scene has its own undo history and <see cref="T:Godot.EditorUndoRedoManager"/> ensures that each action performed in the editor gets associated with a proper scene. For actions not related to scenes (<see cref="T:Godot.ProjectSettings"/> edits, external resources, etc.), a separate global history is used.</para>
            <para>The usage is mostly the same as <see cref="T:Godot.UndoRedo"/>. You create and commit actions and the manager automatically decides under-the-hood what scenes it belongs to. The scene is deduced based on the first operation in an action, using the object from the operation. The rules are as follows:</para>
            <para>- If the object is a <see cref="T:Godot.Node"/>, use the currently edited scene;</para>
            <para>- If the object is a built-in resource, use the scene from its path;</para>
            <para>- If the object is external resource or anything else, use global history.</para>
            <para>This guessing can sometimes yield false results, so you can provide a custom context object when creating an action.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorUndoRedoManager.SpecialHistory.GlobalHistory">
            <summary>
            <para>Global history not associated with any scene, but with external resources etc.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorUndoRedoManager.SpecialHistory.RemoteHistory">
            <summary>
            <para>History associated with remote inspector. Used when live editing a running project.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorUndoRedoManager.SpecialHistory.InvalidHistory">
            <summary>
            <para>Invalid "null" history. It's a special value, not associated with any object.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorUndoRedoManager.CreateAction(System.String,Godot.UndoRedo.MergeMode,Godot.GodotObject)">
            <summary>
            <para>Create a new action. After this is called, do all your calls to <see cref="M:Godot.EditorUndoRedoManager.AddDoMethod(Godot.GodotObject,Godot.StringName,Godot.Variant[])"/>, <see cref="M:Godot.EditorUndoRedoManager.AddUndoMethod(Godot.GodotObject,Godot.StringName,Godot.Variant[])"/>, <see cref="M:Godot.EditorUndoRedoManager.AddDoProperty(Godot.GodotObject,Godot.StringName,Godot.Variant)"/>, and <see cref="M:Godot.EditorUndoRedoManager.AddUndoProperty(Godot.GodotObject,Godot.StringName,Godot.Variant)"/>, then commit the action with <see cref="M:Godot.EditorUndoRedoManager.CommitAction(System.Boolean)"/>.</para>
            <para>The way actions are merged is dictated by the <c>mergeMode</c> argument. See <see cref="T:Godot.UndoRedo.MergeMode"/> for details.</para>
            <para>If <c>customContext</c> object is provided, it will be used for deducing target history (instead of using the first operation).</para>
            </summary>
        </member>
        <member name="M:Godot.EditorUndoRedoManager.CommitAction(System.Boolean)">
            <summary>
            <para>Commit the action. If <c>execute</c> is true (default), all "do" methods/properties are called/set when this function is called.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorUndoRedoManager.IsCommittingAction">
            <summary>
            <para>Returns <c>true</c> if the <see cref="T:Godot.EditorUndoRedoManager"/> is currently committing the action, i.e. running its "do" method or property change (see <see cref="M:Godot.EditorUndoRedoManager.CommitAction(System.Boolean)"/>).</para>
            </summary>
        </member>
        <member name="M:Godot.EditorUndoRedoManager.AddDoMethod(Godot.GodotObject,Godot.StringName,Godot.Variant[])">
            <summary>
            <para>Register a method that will be called when the action is committed (i.e. the "do" action).</para>
            <para>If this is the first operation, the <c>object</c> will be used to deduce target undo history.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorUndoRedoManager.AddUndoMethod(Godot.GodotObject,Godot.StringName,Godot.Variant[])">
            <summary>
            <para>Register a method that will be called when the action is undone (i.e. the "undo" action).</para>
            <para>If this is the first operation, the <c>object</c> will be used to deduce target undo history.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorUndoRedoManager.AddDoProperty(Godot.GodotObject,Godot.StringName,Godot.Variant)">
            <summary>
            <para>Register a property value change for "do".</para>
            <para>If this is the first operation, the <c>object</c> will be used to deduce target undo history.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorUndoRedoManager.AddUndoProperty(Godot.GodotObject,Godot.StringName,Godot.Variant)">
            <summary>
            <para>Register a property value change for "undo".</para>
            <para>If this is the first operation, the <c>object</c> will be used to deduce target undo history.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorUndoRedoManager.AddDoReference(Godot.GodotObject)">
            <summary>
            <para>Register a reference for "do" that will be erased if the "do" history is lost. This is useful mostly for new nodes created for the "do" call. Do not use for resources.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorUndoRedoManager.AddUndoReference(Godot.GodotObject)">
            <summary>
            <para>Register a reference for "undo" that will be erased if the "undo" history is lost. This is useful mostly for nodes removed with the "do" call (not the "undo" call!).</para>
            </summary>
        </member>
        <member name="M:Godot.EditorUndoRedoManager.GetObjectHistoryId(Godot.GodotObject)">
            <summary>
            <para>Returns the history ID deduced from the given <c>object</c>. It can be used with <see cref="M:Godot.EditorUndoRedoManager.GetHistoryUndoRedo(System.Int32)"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorUndoRedoManager.GetHistoryUndoRedo(System.Int32)">
            <summary>
            <para>Returns the <see cref="T:Godot.UndoRedo"/> object associated with the given history <c>id</c>.</para>
            <para><c>id</c> above <c>0</c> are mapped to the opened scene tabs (but it doesn't match their order). <c>id</c> of <c>0</c> or lower have special meaning (see <see cref="T:Godot.EditorUndoRedoManager.SpecialHistory"/>).</para>
            <para>Best used with <see cref="M:Godot.EditorUndoRedoManager.GetObjectHistoryId(Godot.GodotObject)"/>. This method is only provided in case you need some more advanced methods of <see cref="T:Godot.UndoRedo"/> (but keep in mind that directly operating on the <see cref="T:Godot.UndoRedo"/> object might affect editor's stability).</para>
            </summary>
        </member>
        <member name="E:Godot.EditorUndoRedoManager.HistoryChanged">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorUndoRedoManager.HistoryChanged"/> event of a <see cref="T:Godot.EditorUndoRedoManager"/> class.
            </summary>
            <summary>
            <para>Emitted when the list of actions in any history has changed, either when an action is committed or a history is cleared.</para>
            </summary>
        </member>
        <member name="E:Godot.EditorUndoRedoManager.VersionChanged">
            <summary>
            Represents the method that handles the <see cref="E:Godot.EditorUndoRedoManager.VersionChanged"/> event of a <see cref="T:Godot.EditorUndoRedoManager"/> class.
            </summary>
            <summary>
            <para>Emitted when the version of any history has changed as a result of undo or redo call.</para>
            </summary>
        </member>
        <member name="T:Godot.EditorVcsInterface">
            <summary>
            <para>Defines the API that the editor uses to extract information from the underlying VCS. The implementation of this API is included in VCS plugins, which are GDExtension plugins that inherit <see cref="T:Godot.EditorVcsInterface"/> and are attached (on demand) to the singleton instance of <see cref="T:Godot.EditorVcsInterface"/>. Instead of performing the task themselves, all the virtual functions listed below are calling the internally overridden functions in the VCS plugins to provide a plug-n-play experience. A custom VCS plugin is supposed to inherit from <see cref="T:Godot.EditorVcsInterface"/> and override each of these virtual functions.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorVcsInterface.ChangeType.New">
            <summary>
            <para>A new file has been added.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorVcsInterface.ChangeType.Modified">
            <summary>
            <para>An earlier added file has been modified.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorVcsInterface.ChangeType.Renamed">
            <summary>
            <para>An earlier added file has been renamed.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorVcsInterface.ChangeType.Deleted">
            <summary>
            <para>An earlier added file has been deleted.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorVcsInterface.ChangeType.Typechange">
            <summary>
            <para>An earlier added file has been typechanged.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorVcsInterface.ChangeType.Unmerged">
            <summary>
            <para>A file is left unmerged.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorVcsInterface.TreeArea.Commit">
            <summary>
            <para>A commit is encountered from the commit area.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorVcsInterface.TreeArea.Staged">
            <summary>
            <para>A file is encountered from the staged area.</para>
            </summary>
        </member>
        <member name="F:Godot.EditorVcsInterface.TreeArea.Unstaged">
            <summary>
            <para>A file is encountered from the unstaged area.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorVcsInterface._CheckoutBranch(System.String)">
            <summary>
            <para>Checks out a <c>branch_name</c> in the VCS.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorVcsInterface._Commit(System.String)">
            <summary>
            <para>Commits the currently staged changes and applies the commit <c>msg</c> to the resulting commit.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorVcsInterface._CreateBranch(System.String)">
            <summary>
            <para>Creates a new branch named <c>branch_name</c> in the VCS.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorVcsInterface._CreateRemote(System.String,System.String)">
            <summary>
            <para>Creates a new remote destination with name <c>remote_name</c> and points it to <c>remote_url</c>. This can be an HTTPS remote or an SSH remote.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorVcsInterface._DiscardFile(System.String)">
            <summary>
            <para>Discards the changes made in a file present at <c>file_path</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorVcsInterface._Fetch(System.String)">
            <summary>
            <para>Fetches new changes from the remote, but doesn't write changes to the current working directory. Equivalent to <c>git fetch</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorVcsInterface._GetBranchList">
            <summary>
            <para>Gets an instance of an <see cref="T:Godot.Collections.Array"/> of <see cref="T:System.String"/>s containing available branch names in the VCS.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorVcsInterface._GetCurrentBranchName">
            <summary>
            <para>Gets the current branch name defined in the VCS.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorVcsInterface._GetDiff(System.String,System.Int32)">
            <summary>
            <para>Returns an array of <see cref="T:Godot.Collections.Dictionary"/> items (see <see cref="M:Godot.EditorVcsInterface.CreateDiffFile(System.String,System.String)"/>, <see cref="M:Godot.EditorVcsInterface.CreateDiffHunk(System.Int32,System.Int32,System.Int32,System.Int32)"/>, <see cref="M:Godot.EditorVcsInterface.CreateDiffLine(System.Int32,System.Int32,System.String,System.String)"/>, <see cref="M:Godot.EditorVcsInterface.AddLineDiffsIntoDiffHunk(Godot.Collections.Dictionary,Godot.Collections.Array{Godot.Collections.Dictionary})"/> and <see cref="M:Godot.EditorVcsInterface.AddDiffHunksIntoDiffFile(Godot.Collections.Dictionary,Godot.Collections.Array{Godot.Collections.Dictionary})"/>), each containing information about a diff. If <c>identifier</c> is a file path, returns a file diff, and if it is a commit identifier, then returns a commit diff.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorVcsInterface._GetLineDiff(System.String,System.String)">
            <summary>
            <para>Returns an <see cref="T:Godot.Collections.Array"/> of <see cref="T:Godot.Collections.Dictionary"/> items (see <see cref="M:Godot.EditorVcsInterface.CreateDiffHunk(System.Int32,System.Int32,System.Int32,System.Int32)"/>), each containing a line diff between a file at <c>file_path</c> and the <c>text</c> which is passed in.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorVcsInterface._GetModifiedFilesData">
            <summary>
            <para>Returns an <see cref="T:Godot.Collections.Array"/> of <see cref="T:Godot.Collections.Dictionary"/> items (see <see cref="M:Godot.EditorVcsInterface.CreateStatusFile(System.String,Godot.EditorVcsInterface.ChangeType,Godot.EditorVcsInterface.TreeArea)"/>), each containing the status data of every modified file in the project folder.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorVcsInterface._GetPreviousCommits(System.Int32)">
            <summary>
            <para>Returns an <see cref="T:Godot.Collections.Array"/> of <see cref="T:Godot.Collections.Dictionary"/> items (see <see cref="M:Godot.EditorVcsInterface.CreateCommit(System.String,System.String,System.String,System.Int64,System.Int64)"/>), each containing the data for a past commit.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorVcsInterface._GetRemotes">
            <summary>
            <para>Returns an <see cref="T:Godot.Collections.Array"/> of <see cref="T:System.String"/>s, each containing the name of a remote configured in the VCS.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorVcsInterface._GetVcsName">
            <summary>
            <para>Returns the name of the underlying VCS provider.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorVcsInterface._Initialize(System.String)">
            <summary>
            <para>Initializes the VCS plugin when called from the editor. Returns whether or not the plugin was successfully initialized. A VCS project is initialized at <c>project_path</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorVcsInterface._Pull(System.String)">
            <summary>
            <para>Pulls changes from the remote. This can give rise to merge conflicts.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorVcsInterface._Push(System.String,System.Boolean)">
            <summary>
            <para>Pushes changes to the <c>remote</c>. If <c>force</c> is <c>true</c>, a force push will override the change history already present on the remote.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorVcsInterface._RemoveBranch(System.String)">
            <summary>
            <para>Remove a branch from the local VCS.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorVcsInterface._RemoveRemote(System.String)">
            <summary>
            <para>Remove a remote from the local VCS.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorVcsInterface._SetCredentials(System.String,System.String,System.String,System.String,System.String)">
            <summary>
            <para>Set user credentials in the underlying VCS. <c>username</c> and <c>password</c> are used only during HTTPS authentication unless not already mentioned in the remote URL. <c>ssh_public_key_path</c>, <c>ssh_private_key_path</c>, and <c>ssh_passphrase</c> are only used during SSH authentication.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorVcsInterface._ShutDown">
            <summary>
            <para>Shuts down VCS plugin instance. Called when the user either closes the editor or shuts down the VCS plugin through the editor UI.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorVcsInterface._StageFile(System.String)">
            <summary>
            <para>Stages the file present at <c>file_path</c> to the staged area.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorVcsInterface._UnstageFile(System.String)">
            <summary>
            <para>Unstages the file present at <c>file_path</c> from the staged area to the unstaged area.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorVcsInterface.CreateDiffLine(System.Int32,System.Int32,System.String,System.String)">
            <summary>
            <para>Helper function to create a <c>Dictionary</c> for storing a line diff. <c>new_line_no</c> is the line number in the new file (can be <c>-1</c> if the line is deleted). <c>old_line_no</c> is the line number in the old file (can be <c>-1</c> if the line is added). <c>content</c> is the diff text. <c>status</c> is a single character string which stores the line origin.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorVcsInterface.CreateDiffHunk(System.Int32,System.Int32,System.Int32,System.Int32)">
            <summary>
            <para>Helper function to create a <c>Dictionary</c> for storing diff hunk data. <c>old_start</c> is the starting line number in old file. <c>new_start</c> is the starting line number in new file. <c>old_lines</c> is the number of lines in the old file. <c>new_lines</c> is the number of lines in the new file.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorVcsInterface.CreateDiffFile(System.String,System.String)">
            <summary>
            <para>Helper function to create a <c>Dictionary</c> for storing old and new diff file paths.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorVcsInterface.CreateCommit(System.String,System.String,System.String,System.Int64,System.Int64)">
            <summary>
            <para>Helper function to create a commit <see cref="T:Godot.Collections.Dictionary"/> item. <c>msg</c> is the commit message of the commit. <c>author</c> is a single human-readable string containing all the author's details, e.g. the email and name configured in the VCS. <c>id</c> is the identifier of the commit, in whichever format your VCS may provide an identifier to commits. <c>unix_timestamp</c> is the UTC Unix timestamp of when the commit was created. <c>offset_minutes</c> is the timezone offset in minutes, recorded from the system timezone where the commit was created.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorVcsInterface.CreateStatusFile(System.String,Godot.EditorVcsInterface.ChangeType,Godot.EditorVcsInterface.TreeArea)">
            <summary>
            <para>Helper function to create a <c>Dictionary</c> used by editor to read the status of a file.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorVcsInterface.AddDiffHunksIntoDiffFile(Godot.Collections.Dictionary,Godot.Collections.Array{Godot.Collections.Dictionary})">
            <summary>
            <para>Helper function to add an array of <c>diff_hunks</c> into a <c>diff_file</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorVcsInterface.AddLineDiffsIntoDiffHunk(Godot.Collections.Dictionary,Godot.Collections.Array{Godot.Collections.Dictionary})">
            <summary>
            <para>Helper function to add an array of <c>line_diffs</c> into a <c>diff_hunk</c>.</para>
            </summary>
        </member>
        <member name="M:Godot.EditorVcsInterface.PopupError(System.String)">
            <summary>
            <para>Pops up an error message in the edior which is shown as coming from the underlying VCS. Use this to show VCS specific error messages.</para>
            </summary>
        </member>
        <member name="T:Godot.FileSystemDock.InheritEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.FileSystemDock.Inherit"/> event of a <see cref="T:Godot.FileSystemDock"/> class.
            </summary>
        </member>
        <member name="T:Godot.FileSystemDock.InstantiateEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.FileSystemDock.Instantiate"/> event of a <see cref="T:Godot.FileSystemDock"/> class.
            </summary>
        </member>
        <member name="T:Godot.FileSystemDock.ResourceRemovedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.FileSystemDock.ResourceRemoved"/> event of a <see cref="T:Godot.FileSystemDock"/> class.
            </summary>
        </member>
        <member name="T:Godot.FileSystemDock.FileRemovedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.FileSystemDock.FileRemoved"/> event of a <see cref="T:Godot.FileSystemDock"/> class.
            </summary>
        </member>
        <member name="T:Godot.FileSystemDock.FolderRemovedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.FileSystemDock.FolderRemoved"/> event of a <see cref="T:Godot.FileSystemDock"/> class.
            </summary>
        </member>
        <member name="T:Godot.FileSystemDock.FilesMovedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.FileSystemDock.FilesMoved"/> event of a <see cref="T:Godot.FileSystemDock"/> class.
            </summary>
        </member>
        <member name="T:Godot.FileSystemDock.FolderMovedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.FileSystemDock.FolderMoved"/> event of a <see cref="T:Godot.FileSystemDock"/> class.
            </summary>
        </member>
        <member name="E:Godot.FileSystemDock.DisplayModeChanged">
            <summary>
            Represents the method that handles the <see cref="E:Godot.FileSystemDock.DisplayModeChanged"/> event of a <see cref="T:Godot.FileSystemDock"/> class.
            </summary>
        </member>
        <member name="T:Godot.ScriptCreateDialog">
            <summary>
            <para>The <see cref="T:Godot.ScriptCreateDialog"/> creates script files according to a given template for a given scripting language. The standard use is to configure its fields prior to calling one of the <see cref="M:Godot.Window.Popup(System.Nullable{Godot.Rect2I})"/> methods.</para>
            <para><code>
            public override void _Ready()
            {
                var dialog = new ScriptCreateDialog();
                dialog.Config("Node", "res://NewNode.cs"); // For in-engine types.
                dialog.Config("\"res://BaseNode.cs\"", "res://DerivedNode.cs"); // For script types.
                dialog.PopupCentered();
            }
            </code></para>
            </summary>
        </member>
        <member name="M:Godot.ScriptCreateDialog.Config(System.String,System.String,System.Boolean,System.Boolean)">
            <summary>
            <para>Prefills required fields to configure the ScriptCreateDialog for use.</para>
            </summary>
        </member>
        <member name="T:Godot.ScriptCreateDialog.ScriptCreatedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.ScriptCreateDialog.ScriptCreated"/> event of a <see cref="T:Godot.ScriptCreateDialog"/> class.
            </summary>
        </member>
        <member name="E:Godot.ScriptCreateDialog.ScriptCreated">
            <summary>
            <para>Emitted when the user clicks the OK button.</para>
            </summary>
        </member>
        <member name="T:Godot.ScriptEditor">
            <summary>
            <para><b>Note:</b> This class shouldn't be instantiated directly. Instead, access the singleton using <see cref="M:Godot.EditorInterface.GetScriptEditor"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.ScriptEditor.GetCurrentEditor">
            <summary>
            <para>Returns the <see cref="T:Godot.ScriptEditorBase"/> object that the user is currently editing.</para>
            </summary>
        </member>
        <member name="M:Godot.ScriptEditor.GetOpenScriptEditors">
            <summary>
            <para>Returns an array with all <see cref="T:Godot.ScriptEditorBase"/> objects which are currently open in editor.</para>
            </summary>
        </member>
        <member name="M:Godot.ScriptEditor.RegisterSyntaxHighlighter(Godot.EditorSyntaxHighlighter)">
            <summary>
            <para>Registers the <see cref="T:Godot.EditorSyntaxHighlighter"/> to the editor, the <see cref="T:Godot.EditorSyntaxHighlighter"/> will be available on all open scripts.</para>
            <para><b>Note:</b> Does not apply to scripts that are already opened.</para>
            </summary>
        </member>
        <member name="M:Godot.ScriptEditor.UnregisterSyntaxHighlighter(Godot.EditorSyntaxHighlighter)">
            <summary>
            <para>Unregisters the <see cref="T:Godot.EditorSyntaxHighlighter"/> from the editor.</para>
            <para><b>Note:</b> The <see cref="T:Godot.EditorSyntaxHighlighter"/> will still be applied to scripts that are already opened.</para>
            </summary>
        </member>
        <member name="M:Godot.ScriptEditor.GotoLine(System.Int32)">
            <summary>
            <para>Goes to the specified line in the current script.</para>
            </summary>
        </member>
        <member name="M:Godot.ScriptEditor.GetCurrentScript">
            <summary>
            <para>Returns a <see cref="T:Godot.Script"/> that is currently active in editor.</para>
            </summary>
        </member>
        <member name="M:Godot.ScriptEditor.GetOpenScripts">
            <summary>
            <para>Returns an array with all <see cref="T:Godot.Script"/> objects which are currently open in editor.</para>
            </summary>
        </member>
        <member name="M:Godot.ScriptEditor.OpenScriptCreateDialog(System.String,System.String)">
            <summary>
            <para>Opens the script create dialog. The script will extend <c>baseName</c>. The file extension can be omitted from <c>basePath</c>. It will be added based on the selected scripting language.</para>
            </summary>
        </member>
        <member name="T:Godot.ScriptEditor.EditorScriptChangedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.ScriptEditor.EditorScriptChanged"/> event of a <see cref="T:Godot.ScriptEditor"/> class.
            </summary>
        </member>
        <member name="E:Godot.ScriptEditor.EditorScriptChanged">
            <summary>
            <para>Emitted when user changed active script. Argument is a freshly activated <see cref="T:Godot.Script"/>.</para>
            </summary>
        </member>
        <member name="T:Godot.ScriptEditor.ScriptCloseEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.ScriptEditor.ScriptClose"/> event of a <see cref="T:Godot.ScriptEditor"/> class.
            </summary>
        </member>
        <member name="E:Godot.ScriptEditor.ScriptClose">
            <summary>
            <para>Emitted when editor is about to close the active script. Argument is a <see cref="T:Godot.Script"/> that is going to be closed.</para>
            </summary>
        </member>
        <member name="T:Godot.ScriptEditorBase">
            <summary>
            <para>Base editor for editing scripts in the <see cref="T:Godot.ScriptEditor"/>, this does not include documentation items.</para>
            </summary>
        </member>
        <member name="M:Godot.ScriptEditorBase.GetBaseEditor">
            <summary>
            <para>Returns the underlying <see cref="T:Godot.Control"/> used for editing scripts. For text scripts, this is a <see cref="T:Godot.CodeEdit"/>.</para>
            </summary>
        </member>
        <member name="M:Godot.ScriptEditorBase.AddSyntaxHighlighter(Godot.EditorSyntaxHighlighter)">
            <summary>
            <para>Adds a <see cref="T:Godot.EditorSyntaxHighlighter"/> to the open script.</para>
            </summary>
        </member>
        <member name="E:Godot.ScriptEditorBase.NameChanged">
            <summary>
            Represents the method that handles the <see cref="E:Godot.ScriptEditorBase.NameChanged"/> event of a <see cref="T:Godot.ScriptEditorBase"/> class.
            </summary>
            <summary>
            <para>Emitted after script validation or when the edited resource has changed.</para>
            </summary>
        </member>
        <member name="E:Godot.ScriptEditorBase.EditedScriptChanged">
            <summary>
            Represents the method that handles the <see cref="E:Godot.ScriptEditorBase.EditedScriptChanged"/> event of a <see cref="T:Godot.ScriptEditorBase"/> class.
            </summary>
            <summary>
            <para>Emitted after script validation.</para>
            </summary>
        </member>
        <member name="T:Godot.ScriptEditorBase.RequestHelpEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.ScriptEditorBase.RequestHelp"/> event of a <see cref="T:Godot.ScriptEditorBase"/> class.
            </summary>
        </member>
        <member name="E:Godot.ScriptEditorBase.RequestHelp">
            <summary>
            <para>Emitted when the user requests contextual help.</para>
            </summary>
        </member>
        <member name="T:Godot.ScriptEditorBase.RequestOpenScriptAtLineEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.ScriptEditorBase.RequestOpenScriptAtLine"/> event of a <see cref="T:Godot.ScriptEditorBase"/> class.
            </summary>
        </member>
        <member name="E:Godot.ScriptEditorBase.RequestOpenScriptAtLine">
            <summary>
            <para>Emitted when the user requests to view a specific line of a script, similar to <see cref="E:Godot.ScriptEditorBase.GoToMethod"/>.</para>
            </summary>
        </member>
        <member name="E:Godot.ScriptEditorBase.RequestSaveHistory">
            <summary>
            Represents the method that handles the <see cref="E:Godot.ScriptEditorBase.RequestSaveHistory"/> event of a <see cref="T:Godot.ScriptEditorBase"/> class.
            </summary>
            <summary>
            <para>Emitted when the user contextual goto and the item is in the same script.</para>
            </summary>
        </member>
        <member name="T:Godot.ScriptEditorBase.GoToHelpEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.ScriptEditorBase.GoToHelp"/> event of a <see cref="T:Godot.ScriptEditorBase"/> class.
            </summary>
        </member>
        <member name="E:Godot.ScriptEditorBase.GoToHelp">
            <summary>
            <para>Emitted when the user requests a specific documentation page.</para>
            </summary>
        </member>
        <member name="T:Godot.ScriptEditorBase.SearchInFilesRequestedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.ScriptEditorBase.SearchInFilesRequested"/> event of a <see cref="T:Godot.ScriptEditorBase"/> class.
            </summary>
        </member>
        <member name="E:Godot.ScriptEditorBase.SearchInFilesRequested">
            <summary>
            <para>Emitted when the user request to search text in the file system.</para>
            </summary>
        </member>
        <member name="T:Godot.ScriptEditorBase.ReplaceInFilesRequestedEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.ScriptEditorBase.ReplaceInFilesRequested"/> event of a <see cref="T:Godot.ScriptEditorBase"/> class.
            </summary>
        </member>
        <member name="E:Godot.ScriptEditorBase.ReplaceInFilesRequested">
            <summary>
            <para>Emitted when the user request to find and replace text in the file system.</para>
            </summary>
        </member>
        <member name="T:Godot.ScriptEditorBase.GoToMethodEventHandler">
            <summary>
            Represents the method that handles the <see cref="E:Godot.ScriptEditorBase.GoToMethod"/> event of a <see cref="T:Godot.ScriptEditorBase"/> class.
            </summary>
        </member>
        <member name="E:Godot.ScriptEditorBase.GoToMethod">
            <summary>
            <para>Emitted when the user requests to view a specific method of a script, similar to <see cref="E:Godot.ScriptEditorBase.RequestOpenScriptAtLine"/>.</para>
            </summary>
        </member>
    </members>
</doc>
