EditorInterface
Reckfell editor's interface.
Reckfell editor's interface.
EditorInterface gives you control over Reckfell 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 EditorSettings, EditorFileSystem, EditorResourcePreview, ScriptEditor, the editor viewport, and information about scenes.
Note: This class shouldn't be instantiated directly. Instead, access the singleton directly by its name.
// In C# you can access it via the static Singleton property.
EditorSettings settings = EditorInterface.Singleton.GetEditorSettings();Declarations checked against C# SDK 1.0.0. Expand a name to see declarations and documentation.
Properties3
DistractionFreeModeProperty
public bool DistractionFreeMode { get; set; }Reads or toggles the editor’s distraction-free UI mode. Neither makes the game fullscreen nor changes the project on disk.
MovieMakerEnabledProperty
public bool MovieMakerEnabled { get; set; }If true, the Movie Maker mode is enabled in the editor. See MovieWriter for more information.
SingletonProperty
public static EditorInterface Singleton { get; }Singleton interface of the running editor. Use from editor-extension code; this is not an exported-game service. Do not free the instance.
Methods80
AddRootEntityvoid
public void AddRootEntity(Entity node);Makes node root of the currently opened scene. Only works if the scene is empty. If the node is a scene instance, an inheriting scene will be created.
| Name | Type | Default |
|---|---|---|
node | Entity | — |
CloseSceneError
public Error CloseScene();Directly closes the current level, discarding unsaved changes without a confirmation dialog in the current implementation. Save needed data first. Returns Error.Ok when closing proceeds, or Error.DoesNotExist for the initial empty tab without a level.
ErrorDirectly closes the current level, discarding unsaved changes without a confirmation dialog in the current implementation. Save needed data first. Returns Error.Ok when closing proceeds, or Error.DoesNotExist for the initial empty tab without a level.
EditEntityvoid
public void EditEntity(Entity node);Passes an Entity to the editor for inspector editing. Neither creates the Entity nor adds it to a level. The supplied object retains its owner.
| Name | Type | Default |
|---|---|---|
node | Entity | — |
nodeEntity to edit; ownership is not transferred.
EditResourcevoid
public void EditResource(Resource resource);Opens the supplied resource for editing. Does not save it to disk. Use EditScript to navigate to a line and column in a Script.
| Name | Type | Default |
|---|---|---|
resource | Resource | — |
resourceResource to edit, not a save command.
EditScriptvoid
public void EditScript(Script script, int line = -1, int column = 0, bool grabFocus = true);Opens a Script in the configured editor for its language, which may be external. Positive line and column coordinates are one-based: the wrapper subtracts one from both. Defaults -1 and zero do not designate zero-based line/column zero. grabFocus requests focus.
| Name | Type | Default |
|---|---|---|
script | Script | — |
line | int | -1 |
column | int | 0 |
grabFocus | bool | true |
scriptScript resource to open with the configured language editor.
linePositive one-based line; default -1 does not specify the first line.
columnPositive one-based column; the wrapper subtracts one.
grabFocusRequest script-editor focus.
GetBaseControlControl
public Control GetBaseControl();Returns the editor UI base Control, for example to host your own dialog. It belongs to the editor: do not delete, dispose or reparent it. Remove your own UI when the extension is disabled.
ControlReturns the editor UI base Control, for example to host your own dialog. It belongs to the editor: do not delete, dispose or reparent it. Remove your own UI when the extension is disabled.
GetCommandPaletteEditorCommandPalette
public EditorCommandPalette GetCommandPalette();Returns the shared editor command palette. This does not open the palette. Remove your own commands when disabling the extension; do not dispose the service.
EditorCommandPaletteReturns the shared editor command palette. This does not open the palette. Remove your own commands when disabling the extension; do not dispose the service.
GetContentBrowserContentBrowser
public ContentBrowser GetContentBrowser();Returns the shared editor ContentBrowser. File paths and file selection belong to this browser, independently of Entity selection. Do not dispose the dock.
ContentBrowserReturns the shared editor ContentBrowser. File paths and file selection belong to this browser, independently of Entity selection. Do not dispose the dock.
GetCurrentDirectorystring
public string GetCurrentDirectory();Returns ContentBrowser’s current directory. Neither the process working directory nor necessarily the project root.
stringReturns ContentBrowser’s current directory. Neither the process working directory nor necessarily the project root.
GetCurrentFeatureProfilestring
public string GetCurrentFeatureProfile();Returns the name of the currently activated feature profile. If the default profile is currently active, an empty string is returned instead.
In order to get a reference to the EditorFeatureProfile, you must load the feature profile using EditorFeatureProfile.LoadFromFile.
Note: Feature profiles created via the user interface are loaded from the feature_profiles directory, as a file with the .profile extension. The editor configuration folder can be found by using EditorPaths.GetConfigDir.
stringGetCurrentPathstring
public string GetCurrentPath();Returns the current ContentBrowser path. Do not assume it is always a directory; use GetCurrentDirectory for that purpose.
stringReturns the current ContentBrowser path. Do not assume it is always a directory; use GetCurrentDirectory for that purpose.
GetDockByNameEditorDock
public EditorDock GetDockByName(string name);Finds a registered dock by display title. This is neither Entity Name lookup nor plugin-folder lookup.
| Name | Type | Default |
|---|---|---|
name | string | — |
nameDisplay title, such as Docs workspace. Translation or Title changes can change lookup results.
EditorDockMatching EditorDock, otherwise null. Prefer retaining a direct reference for owned panels.
GetEditedSceneRootEntity
public Entity GetEditedSceneRoot();Reads the current edited hierarchy root. Distinct from a running game's CurrentScene. Returned the opened Fixture.rscene root in the check; does not modify the hierarchy.
EntityRoot Entity or null when no edited content exists. Check before reading children or properties.
GetEditorLanguagestring
public string GetEditorLanguage();Returns the editor interface language selected in editor settings. Not the exported game’s locale.
stringReturns the editor interface language selected in editor settings. Not the exported game’s locale.
GetEditorMainScreenVBoxContainer · Deprecated
public VBoxContainer GetEditorMainScreen();Obsolete access to the VBoxContainer used by legacy main-screen extensions. It no longer represents the editor’s whole main screen. Use GetDockByName for a dock or GetBaseControl to host your UI. The returned container belongs to the editor.
VBoxContainerObsolete access to the VBoxContainer used by legacy main-screen extensions. It no longer represents the editor’s whole main screen. Use GetDockByName for a dock or GetBaseControl to host your UI. The returned container belongs to the editor.
GetEditorPathsEditorPaths
public EditorPaths GetEditorPaths();Returns the shared EditorPaths service for editor data/settings locations. Do not substitute these locations for project resource paths or dispose the service.
EditorPathsReturns the shared EditorPaths service for editor data/settings locations. Do not substitute these locations for project resource paths or dispose the service.
GetEditorScalefloat
public float GetEditorScale();Returns the current EDSCALE editor UI multiplier. Multiply your own fixed base dimensions by it; this is neither screen resolution nor camera zoom.
floatReturns the current EDSCALE editor UI multiplier. Multiply your own fixed base dimensions by it; this is neither screen resolution nor camera zoom.
GetEditorSettingsEditorSettings
public EditorSettings GetEditorSettings();Return the current editor settings object. These are editor-environment settings, not game ProjectSettings. This is a borrowed reference: do not dispose the singleton or create a new instance for ordinary reads.
EditorSettingsThe current EditorSettings.
GetEditorThemeTheme
public Theme GetEditorTheme();Returns the editor’s shared theme resource. Read styles, colors and icons for your UI. Mutating this resource affects its users; it is not a private copy.
ThemeReturns the editor’s shared theme resource. Read styles, colors and icons for your UI. Mutating this resource affects its users; it is not a private copy.
GetEditorToasterEditorToaster
public EditorToaster GetEditorToaster();Returns the shared editor notification service. Retrieving it does not display a message. Do not dispose the service.
EditorToasterReturns the shared editor notification service. Retrieving it does not display a message. Do not dispose the service.
GetEditorUndoRedoEditorUndoRedoManager
public EditorUndoRedoManager GetEditorUndoRedo();Returns the shared EditorUndoRedoManager. Record extension changes as actions in the appropriate history; obtaining the manager does not itself record Undo. Do not dispose the service.
EditorUndoRedoManagerReturns the shared EditorUndoRedoManager. Record extension changes as actions in the appropriate history; obtaining the manager does not itself record Undo. Do not dispose the service.
GetEditorViewport2DSubViewport
public SubViewport GetEditorViewport2D();Returns the editor’s 2D editing SubViewport. It belongs to the editor, not the running game. Do not dispose it or reconfigure it as your own viewport.
SubViewportReturns the editor’s 2D editing SubViewport. It belongs to the editor, not the running game. Do not dispose it or reconfigure it as your own viewport.
GetEditorViewport3DSubViewport
public SubViewport GetEditorViewport3D(int idx = 0);Returns one of the four 3D editor SubViewports, using idx from 0 through 3. An invalid index reports an error and returns null. Not a camera or the running game’s viewport; the editor owns the object.
| Name | Type | Default |
|---|---|---|
idx | int | 0 |
idx3D editor viewport index, zero through three.
SubViewportReturns one of the four 3D editor SubViewports, using idx from 0 through 3. An invalid index reports an error and returns null. Not a camera or the running game’s viewport; the editor owns the object.
GetEntity3DRotateSnapfloat
public float GetEntity3DRotateSnap();Returns the amount of degrees the 3D editor's rotational snapping is set to.
floatGetEntity3DScaleSnapfloat
public float GetEntity3DScaleSnap();Returns the amount of units the 3D editor's scale snapping is set to.
floatGetEntity3DTranslateSnapfloat
public float GetEntity3DTranslateSnap();Returns the amount of units the 3D editor's translation snapping is set to.
floatGetInspectorEditorInspector
public EditorInspector GetInspector();Returns the editor inspector. Use InspectObject or EditResource/EditEntity to display an object. Do not dispose or reparent the inspector itself.
EditorInspectorReturns the editor inspector. Use InspectObject or EditResource/EditEntity to display an object. Do not dispose or reparent the inspector itself.
GetMcpServiceEditorMcpService
public EditorMcpService GetMcpService();Returns the built-in MCP command dispatcher shared by external clients and the AI dock. Available in editor builds with the MCP module enabled. Commands run on the main thread; asynchronous operations return a job identifier. This editor-owned service must not be freed.
EditorMcpServiceGetOpenSceneRootsReckfell.Collections.Array<Entity>
public Reckfell.Collections.Array<Entity> GetOpenSceneRoots();Returns a new array of root Entities for open levels, skipping missing roots. References point to actual editor objects, not copies; do not dispose them. Skipped entries mean indices need not match GetOpenScenes.
Reckfell.Collections.Array<Entity>Returns a new array of root Entities for open levels, skipping missing roots. References point to actual editor objects, not copies; do not dispose them. Skipped entries mean indices need not match GetOpenScenes.
GetOpenScenesstring[]
public string[] GetOpenScenes();Returns a new string[] of open level paths in tab order. A new unsaved level may have an empty path. The array is not a list of Entity instances.
string[]Returns a new string[] of open level paths in tab order. A new unsaved level may have an empty path. The array is not a list of Entity instances.
GetPlayingScenestring
public string GetPlayingScene();Returns the name of the scene that is being played. If no scene is currently being played, returns an empty string.
stringGetResourceFilesystemEditorFileSystem
public EditorFileSystem GetResourceFilesystem();Returns the shared EditorFileSystem indexing project resources. Neither a general-purpose file API nor a directory copy. Do not dispose the service.
EditorFileSystemReturns the shared EditorFileSystem indexing project resources. Neither a general-purpose file API nor a directory copy. Do not dispose the service.
GetResourcePreviewerEditorResourcePreview
public EditorResourcePreview GetResourcePreviewer();Returns the shared EditorResourcePreview for resource-preview requests. This call neither produces a finished texture nor waits for generation. Do not dispose the service.
EditorResourcePreviewReturns the shared EditorResourcePreview for resource-preview requests. This call neither produces a finished texture nor waits for generation. Do not dispose the service.
GetScenePaint2DScenePaint2DEditor
public ScenePaint2DEditor GetScenePaint2D();Returns the shared ScenePaint2DEditor tool. Neither a new tool instance nor a game Entity; do not dispose it.
ScenePaint2DEditorReturns the shared ScenePaint2DEditor tool. Neither a new tool instance nor a game Entity; do not dispose it.
GetScriptEditorScriptEditor
public ScriptEditor GetScriptEditor();Return the installed Script panel instance. Its current document can be help, so GetCurrentScript()/GetCurrentEditor() need not return a script. This is not an external C# IDE object.
ScriptEditorThe current editor Script panel.
GetSelectedPathsstring[]
public string[] GetSelectedPaths();Returns a new string[] of paths selected in ContentBrowser. Editing the array does not change browser selection. These are not selected Entity paths.
string[]Returns a new string[] of paths selected in ContentBrowser. Editing the array does not change browser selection. These are not selected Entity paths.
GetSelectionEditorSelection
public EditorSelection GetSelection();Returns the shared EditorSelection service. Use it to read/change selected Entities; it is not the ContentBrowser file selection. Do not dispose the service.
EditorSelectionReturns the shared EditorSelection service. Use it to read/change selected Entities; it is not the ContentBrowser file selection. Do not dispose the service.
GetUnsavedScenesstring[]
public string[] GetUnsavedScenes();Returns paths of open levels with unsaved changes. A new level may have an empty path. This is a state snapshot, not a save operation.
string[]Returns paths of open levels with unsaved changes. A new level may have an empty path. This is a state snapshot, not a save operation.
InspectObjectvoid
public void InspectObject(ReckfellObject @object, string forProperty = "", bool inspectorOnly = false);Shows the given property on the given object in the editor's Inspector dock. If inspector_only is true, plugins will not attempt to edit object.
| Name | Type | Default |
|---|---|---|
object | ReckfellObject | — |
forProperty | string | "" |
inspectorOnly | bool | false |
IsDistractionFreeModeEnabledbool
public bool IsDistractionFreeModeEnabled();Reads or toggles the editor’s distraction-free UI mode. Neither makes the game fullscreen nor changes the project on disk.
boolReads or toggles the editor’s distraction-free UI mode. Neither makes the game fullscreen nor changes the project on disk.
IsEntity3DSnapEnabledbool
public bool IsEntity3DSnapEnabled();Returns true if the 3D editor currently has snapping mode enabled, and false otherwise.
boolIsExitingbool
public bool IsExiting();Returns the editor’s current exiting state. Does not close the editor.
boolReturns the editor’s current exiting state. Does not close the editor.
IsMovieMakerEnabledbool
public bool IsMovieMakerEnabled();boolIsMultiWindowEnabledbool
public bool IsMultiWindowEnabled();Returns whether editor multiwindow mode is enabled. Neither counts open windows nor describes exported-game window support.
boolReturns whether editor multiwindow mode is enabled. Neither counts open windows nor describes exported-game window support.
IsObjectEditedbool
public bool IsObjectEdited(ReckfellObject @object);Reads the supplied object’s edited flag. Requires a non-null object. Does not test whether the inspector displays it or enumerate all unsaved levels.
| Name | Type | Default |
|---|---|---|
object | ReckfellObject | — |
objectNon-null object whose edited flag is read or set.
boolReads the supplied object’s edited flag. Requires a non-null object. Does not test whether the inspector displays it or enumerate all unsaved levels.
IsPlayingScenebool
public bool IsPlayingScene();Returns true if a scene is currently being played, false otherwise. Paused scenes are considered as being played.
boolIsPluginEnabledbool
public bool IsPluginEnabled(string plugin);Reads editor enabled-plugin registration. Does not check directory existence or correctness of every plugin operation.
| Name | Type | Default |
|---|---|---|
plugin | string | — |
pluginAddon directory name or asset:// plugin.cfg path, as in SetPluginEnabled.
booltrue for an enabled registered entry; false after the checked disable operation.
MakeMeshPreviewsReckfell.Collections.Array<Texture2D>
public Reckfell.Collections.Array<Texture2D> MakeMeshPreviews(Reckfell.Collections.Array<Mesh> meshes, int previewSize);Returns mesh previews rendered at the given size as an Reckfell.Collections.Array of Texture2Ds.
| Name | Type | Default |
|---|---|---|
meshes | Reckfell.Collections.Array<Mesh> | — |
previewSize | int | — |
Reckfell.Collections.Array<Texture2D>MarkSceneAsUnsavedvoid
public void MarkSceneAsUnsaved();Marks the current level’s history unsaved and updates tabs. Neither writes a file nor creates an Undo action for extension changes.
OpenSceneFromPath2 overloads
public void OpenSceneFromPath(string scenePath);Requests opening a level at a path. Does nothing while the editor is already changing levels. setInherited=true opens an inherited variant. The void return does not confirm successful loading.
| Name | Type | Default |
|---|---|---|
scenePath | string | — |
scenePathLevel file path to open.
public void OpenSceneFromPath(string sceneFilepath, bool setInherited = false);Requests opening a level at a path. Does nothing while the editor is already changing levels. setInherited=true opens an inherited variant. The void return does not confirm successful loading.
| Name | Type | Default |
|---|---|---|
sceneFilepath | string | — |
setInherited | bool | false |
sceneFilepathLevel file path for this operation.
setInheritedOpen an inherited level variant.
PlayCurrentScenevoid
public void PlayCurrentScene();Plays the currently active scene.
PlayCustomScenevoid
public void PlayCustomScene(string sceneFilepath);Plays the scene specified by its filepath.
| Name | Type | Default |
|---|---|---|
sceneFilepath | string | — |
PlayMainScenevoid
public void PlayMainScene();Plays the main scene.
PopupCreateDialogvoid
public void PopupCreateDialog(Callable callback, StringName baseType = null, string currentType = "", string dialogTitle = "", Reckfell.Collections.Array<StringName> typeBlocklist = null);Pops up an editor dialog for creating an object.
The callback must take a single argument of type string, which will contain the type name of the selected object (or the script path of the type, if the type is created from a script), or be an empty string if no item is selected.
The base_type specifies the base type of objects to display. For example, if you set this to "Resource", all types derived from Resource will display in the create dialog.
The current_type will be passed in the search box of the create dialog, and the specified type can be immediately selected when the dialog pops up. If the current_type is not derived from base_type, there will be no result of the type in the dialog.
The dialog_title allows you to define a custom title for the dialog. This is useful if you want to accurately hint the usage of the dialog. If the dialog_title is an empty string, the dialog will use "Create New 'Base Type'" as the default title.
The type_blocklist contains a list of type names, and the types in the blocklist will be hidden from the create dialog.
Note: Trying to list the base type in the type_blocklist will hide all types derived from the base type from the create dialog.
| Name | Type | Default |
|---|---|---|
callback | Callable | — |
baseType | StringName | null |
currentType | string | "" |
dialogTitle | string | "" |
typeBlocklist | Reckfell.Collections.Array<StringName> | null |
PopupDialogvoid
public void PopupDialog(Window dialog, Rect2I? rect = default);Pops up the dialog in the editor UI with Window.PopupExclusive. The dialog must have no current parent, otherwise the method fails.
See also Window.SetUnparentWhenInvisible.
| Name | Type | Default |
|---|---|---|
dialog | Window | — |
rect | Rect2I? | default |
rectIf the parameter is null, then the default value is new Rect2I(new Vector2I(0, 0), new Vector2I(0, 0)).
PopupDialogCenteredvoid
public void PopupDialogCentered(Window dialog, Vector2I? minsize = default);Pops up the dialog in the editor UI with Window.PopupExclusiveCentered. The dialog must have no current parent, otherwise the method fails.
See also Window.SetUnparentWhenInvisible.
| Name | Type | Default |
|---|---|---|
dialog | Window | — |
minsize | Vector2I? | default |
minsizeIf the parameter is null, then the default value is new Vector2I(0, 0).
PopupDialogCenteredClampedvoid
public void PopupDialogCenteredClamped(Window dialog, Vector2I? minsize = default, float fallbackRatio = 0.75f);Pops up the dialog in the editor UI with Window.PopupExclusiveCenteredClamped. The dialog must have no current parent, otherwise the method fails.
See also Window.SetUnparentWhenInvisible.
| Name | Type | Default |
|---|---|---|
dialog | Window | — |
minsize | Vector2I? | default |
fallbackRatio | float | 0.75f |
minsizeIf the parameter is null, then the default value is new Vector2I(0, 0).
PopupDialogCenteredRatiovoid
public void PopupDialogCenteredRatio(Window dialog, float ratio = 0.8f);Pops up the dialog in the editor UI with Window.PopupExclusiveCenteredRatio. The dialog must have no current parent, otherwise the method fails.
See also Window.SetUnparentWhenInvisible.
| Name | Type | Default |
|---|---|---|
dialog | Window | — |
ratio | float | 0.8f |
PopupEntitySelector2 overloads
public void PopupEntitySelector(Callable callback, Reckfell.Collections.Array<StringName> validTypes);Pops up an editor dialog for selecting a Entity from the edited scene. The callback must take a single argument of type EntityPath. It is called on the selected EntityPath or the empty path ^"" if the dialog is canceled. If valid_types is provided, the dialog will only show Nodes that match one of the listed Entity types. If current_value is provided, the Entity will be automatically selected in the tree, if it exists.
Example: Display the node selection dialog as soon as this node is added to the tree for the first time:
| Name | Type | Default |
|---|---|---|
callback | Callable | — |
validTypes | Reckfell.Collections.Array<StringName> | — |
public void PopupEntitySelector(Callable callback, Reckfell.Collections.Array<StringName> validTypes = null, Entity currentValue = null);Pops up an editor dialog for selecting a Entity from the edited scene. The callback must take a single argument of type EntityPath. It is called on the selected EntityPath or the empty path ^"" if the dialog is canceled. If valid_types is provided, the dialog will only show Nodes that match one of the listed Entity types. If current_value is provided, the Entity will be automatically selected in the tree, if it exists.
Example: Display the node selection dialog as soon as this node is added to the tree for the first time:
| Name | Type | Default |
|---|---|---|
callback | Callable | — |
validTypes | Reckfell.Collections.Array<StringName> | null |
currentValue | Entity | null |
PopupMethodSelectorvoid
public void PopupMethodSelector(ReckfellObject @object, Callable callback, string currentValue = "");Pops up an editor dialog for selecting a method from object. The callback must take a single argument of type string which will contain the name of the selected method or be empty if the dialog is canceled. If current_value is provided, the method will be selected automatically in the method list, if it exists.
| Name | Type | Default |
|---|---|---|
object | ReckfellObject | — |
callback | Callable | — |
currentValue | string | "" |
PopupPropertySelector4 overloads
public void PopupPropertySelector(ReckfellObject @object, Callable callback, int[] typeFilter);Pops up an editor dialog for selecting properties from object. The callback must take a single argument of type EntityPath. It is called on the selected property path (see EntityPath.GetAsPropertyPath) or the empty path ^"" if the dialog is canceled. If type_filter is provided, the dialog will only show properties that match one of the listed Variant.Type values. If current_value is provided, the property will be selected automatically in the property list, if it exists.
| Name | Type | Default |
|---|---|---|
object | ReckfellObject | — |
callback | Callable | — |
typeFilter | int[] | — |
typeFilterIf the parameter is null, then the default value is Array.Empty<int>().
public void PopupPropertySelector(ReckfellObject @object, Callable callback, int[] typeFilter = null, string currentValue = "");Pops up an editor dialog for selecting properties from object. The callback must take a single argument of type EntityPath. It is called on the selected property path (see EntityPath.GetAsPropertyPath) or the empty path ^"" if the dialog is canceled. If type_filter is provided, the dialog will only show properties that match one of the listed Variant.Type values. If current_value is provided, the property will be selected automatically in the property list, if it exists.
| Name | Type | Default |
|---|---|---|
object | ReckfellObject | — |
callback | Callable | — |
typeFilter | int[] | null |
currentValue | string | "" |
typeFilterIf the parameter is null, then the default value is Array.Empty<int>().
public void PopupPropertySelector(ReckfellObject @object, Callable callback, ReadOnlySpan<int> typeFilter);Pops up an editor dialog for selecting properties from object. The callback must take a single argument of type EntityPath. It is called on the selected property path (see EntityPath.GetAsPropertyPath) or the empty path ^"" if the dialog is canceled. If type_filter is provided, the dialog will only show properties that match one of the listed Variant.Type values. If current_value is provided, the property will be selected automatically in the property list, if it exists.
| Name | Type | Default |
|---|---|---|
object | ReckfellObject | — |
callback | Callable | — |
typeFilter | ReadOnlySpan<int> | — |
public void PopupPropertySelector(ReckfellObject @object, Callable callback, ReadOnlySpan<int> typeFilter, string currentValue);Pops up an editor dialog for selecting properties from object. The callback must take a single argument of type EntityPath. It is called on the selected property path (see EntityPath.GetAsPropertyPath) or the empty path ^"" if the dialog is canceled. If type_filter is provided, the dialog will only show properties that match one of the listed Variant.Type values. If current_value is provided, the property will be selected automatically in the property list, if it exists.
| Name | Type | Default |
|---|---|---|
object | ReckfellObject | — |
callback | Callable | — |
typeFilter | ReadOnlySpan<int> | — |
currentValue | string | — |
PopupQuickOpenvoid
public void PopupQuickOpen(Callable callback, Reckfell.Collections.Array<StringName> baseTypes = null);Pops up an editor dialog for quick selecting a resource file. The callback must take a single argument of type string which will contain the path of the selected resource or be empty if the dialog is canceled. If base_types is provided, the dialog will only show resources that match these types. Only types deriving from Resource are supported.
| Name | Type | Default |
|---|---|---|
callback | Callable | — |
baseTypes | Reckfell.Collections.Array<StringName> | null |
ReloadSceneFromPathvoid
public void ReloadSceneFromPath(string sceneFilepath);Requests reloading an open level from disk. This may replace unsaved changes; decide whether to save them first. Ignored while changing levels. Does not return the loading result.
| Name | Type | Default |
|---|---|---|
sceneFilepath | string | — |
sceneFilepathLevel file path for this operation.
RestartEditorvoid
public void RestartEditor(bool save = true);Requests restarting the editor. save=true first invokes saving all levels; false skips that step. Does not return confirmation of successful file writes.
| Name | Type | Default |
|---|---|---|
save | bool | true |
saveInvoke saving all levels before restarting.
SaveAllScenesvoid
public void SaveAllScenes();Invokes the editor’s save-all-open-levels operation. Returns no aggregate file-write result and does not mean every arbitrary project resource has been saved.
SaveSceneError
public Error SaveScene();For the current level with a root and an existing path, calls SaveSceneAs and returns Error.Ok. Without a root or path, returns Error.CantCreate. Ok does not forward a file-write result: the underlying call is void. A new level first needs SaveSceneAs.
ErrorFor the current level with a root and an existing path, calls SaveSceneAs and returns Error.Ok. Without a root or path, returns Error.CantCreate. Ok does not forward a file-write result: the underlying call is void. A new level first needs SaveSceneAs.
SaveSceneAsvoid
public void SaveSceneAs(string path, bool withPreview = true);Requests saving the current level to path; withPreview controls preview generation. This void method returns no file-write error code. Save levels as .rscene; this does not replace the separate .rprefab creation workflow.
| Name | Type | Default |
|---|---|---|
path | string | — |
withPreview | bool | true |
pathSave path for the current level, ending in .rscene.
withPreviewGenerate a preview when saving.
SelectFilevoid
public void SelectFile(string file);Asks ContentBrowser to select a file. This navigates editor resources; it neither loads a file into the game nor changes Entity selection.
| Name | Type | Default |
|---|---|---|
file | string | — |
fileResource file path to select in ContentBrowser.
SetCurrentFeatureProfilevoid
public void SetCurrentFeatureProfile(string profileName);Selects and activates the specified feature profile with the given profile_name. Set profile_name to an empty string to reset to the default feature profile.
A feature profile can be created programmatically using the EditorFeatureProfile class.
Note: The feature profile that gets activated must be located in the feature_profiles directory, as a file with the .profile extension. If a profile could not be found, an error occurs. The editor configuration folder can be found by using EditorPaths.GetConfigDir.
| Name | Type | Default |
|---|---|---|
profileName | string | — |
SetDistractionFreeModevoid
public void SetDistractionFreeMode(bool enter);Reads or toggles the editor’s distraction-free UI mode. Neither makes the game fullscreen nor changes the project on disk.
| Name | Type | Default |
|---|---|---|
enter | bool | — |
enterEnable distraction-free editor mode.
SetMainScreenEditorvoid · Deprecated
public void SetMainScreenEditor(string name);Obsolete way to focus a main-screen dock by name. Reports an error for an unknown name. In new code, retrieve a dock with GetDockByName, check for null and call MakeVisible.
| Name | Type | Default |
|---|---|---|
name | string | — |
nameRequested dock name; use GetDockByName in new code.
SetMovieMakerEnabledvoid
public void SetMovieMakerEnabled(bool enabled);| Name | Type | Default |
|---|---|---|
enabled | bool | — |
SetObjectEditedvoid
public void SetObjectEdited(ReckfellObject @object, bool edited);Sets a non-null object’s edited flag. Does not change properties, save a file or create Undo. Use the appropriate history or MarkSceneAsUnsaved for the current level’s unsaved state.
| Name | Type | Default |
|---|---|---|
object | ReckfellObject | — |
edited | bool | — |
objectNon-null object whose edited flag is read or set.
editedNew edited flag, without saving or Undo.
SetPluginEnabledvoid
public void SetPluginEnabled(string plugin, bool enabled);Enables or disables an editor plugin. Requires a running editor and valid plugin.cfg/tool script. Returns no acknowledgement: check IsPluginEnabled and loading messages.
| Name | Type | Default |
|---|---|---|
plugin | string | — |
enabled | bool | — |
pluginDirectory name under asset://addons/, such as docs_scene_audit; a asset:// plugin.cfg path is also supported. Not the displayed plugin name.
enabledRequested state. Check first: enabling an already enabled plugin or disabling an absent plugin is rejected.
StopPlayingScenevoid
public void StopPlayingScene();Stops the scene that is currently playing.